当前位置: 首页 > news >正文

遇到一例无法保存编辑后的 Excel 文件的问题

某个 .xlsx 文件编辑后按 ctrl + s 保存,存在如下提示——

保存“C:\Users\demo\Downloads\工作簿1.xlsx”时检测到错误。Microsoft Excel 可通过删除或修复某些功能来保存此文件。若要在新文件中进行修复,请单击“继续”。若要取消保存该文件,请单击“取消”。

做了如下尝试——

  • 另存为 .xlsm/.xlsb等,失败
  • 另存为 .xls 成功
  • 另存.xls 为 .xlsx 失败
  • .xls 文件编辑后,可以保存
  • 使用 wps 编辑或另存 .xlsx 成功
  • wps生成的 .xlsx 依旧存在上面的问题。

对于 Excel 文件,使用错误检查时,发现存在“未受保护的公式”和“公式不一致”的错误。
使用如下宏忽略错误

Sub BatchIgnoreUnprotectedFormulaAndInconsistentFormulaErrors()' 声明变量Dim ws As WorksheetDim cell As Range' 关闭屏幕更新,加快运行速度Application.ScreenUpdating = False' 遍历当前工作簿中的所有工作表For Each ws In ActiveWorkbook.Worksheets' 遍历当前工作表中已使用的所有单元格For Each cell In ws.UsedRange' 检查单元格是否存在“未受保护的公式”错误If cell.Errors.Item(xlUnlockedFormulaCells).Value = True Then' 如果存在,则忽略此错误cell.Errors(xlUnlockedFormulaCells).Ignore = TrueEnd If' 检查单元格是否存在“公式不一致”错误If cell.Errors.Item(xlInconsistentFormula).Value = True Then' 如果存在,则忽略此错误cell.Errors(xlInconsistentFormula).Ignore = TrueEnd IfNext cellNext ws' 恢复屏幕更新Application.ScreenUpdating = True' 提示完成MsgBox "已批量忽略所有工作表中的“未受保护的公式”和“公式不一致”错误!", vbInformation
End Sub

或者针对未受保护的公式所在的单元格进行锁定

Sub LockFormulasAndProtectSheets()' 声明变量Dim ws As WorksheetDim cell As RangeDim formulaCells As RangeDim hasPassword As BooleanDim sheetPassword As String' 关闭屏幕更新,加快运行速度Application.ScreenUpdating = False' 遍历当前工作簿中的所有工作表For Each ws In ActiveWorkbook.Worksheets' 检查工作表是否已受保护hasPassword = ws.ProtectContents' 如果工作表受保护,尝试取消保护(无密码)If hasPassword ThenOn Error Resume Nextws.Unprotect "" ' 尝试用空密码取消保护If Err.Number <> 0 Then' 如果取消保护失败,提示用户输入密码sheetPassword = InputBox("请输入工作表 '" & ws.Name & "' 的密码:", "工作表密码")If sheetPassword = "" Then' 用户取消输入,跳过此工作表On Error GoTo 0GoTo NextSheetEnd Ifws.Unprotect sheetPasswordOn Error GoTo 0ElseOn Error GoTo 0End IfEnd If' 解锁所有单元格ws.Cells.Locked = False' 查找所有包含公式的单元格On Error Resume NextSet formulaCells = ws.UsedRange.SpecialCells(xlCellTypeFormulas)On Error GoTo 0' 如果找到公式单元格If Not formulaCells Is Nothing Then' 锁定所有公式单元格formulaCells.Locked = True' 忽略"未受保护的公式"错误For Each cell In formulaCellsIf cell.Errors.Item(xlUnlockedFormulaCells).Value = True Thencell.Errors(xlUnlockedFormulaCells).Ignore = TrueEnd IfNext cellEnd If' 重新保护工作表(使用原密码或空密码)If hasPassword ThenIf sheetPassword <> "" Thenws.Protect Password:=sheetPassword, DrawingObjects:=True, Contents:=True, Scenarios:=TrueElsews.Protect DrawingObjects:=True, Contents:=True, Scenarios:=TrueEnd IfElse' 如果原工作表未受保护,现在保护它(无密码)ws.Protect DrawingObjects:=True, Contents:=True, Scenarios:=TrueEnd If' 重置密码变量sheetPassword = ""NextSheet:Next ws' 恢复屏幕更新Application.ScreenUpdating = True' 提示完成MsgBox "已锁定所有公式单元格并保护工作表!" & vbCrLf & _"同时忽略了所有'未受保护的公式'错误。", vbInformation
End Sub

结果依旧无法保存编辑。起初还怀疑是 WPS 下编辑生成的 xlsx,在用 Excel 程序编辑时,有兼容性问题。
最后解压 ET 保存的 .xlsx 文件,发现有个 \xl\embeddings\oleObject1.bin 文件。 打开 xlsx,使用定位对象,或者选择窗格,删除可疑图片后,就可以保存了。

http://www.hskmm.com/?act=detail&tid=36659

相关文章:

  • 告别难找的本地搜图工具!ImageSearch 2.2 携全新 2.0UI 登场
  • 2025 年焊管源头厂家最新推荐榜单:盘点高性能焊管制造企业,助力下游企业精准选品家具/汽车/高精度内刮/镀铝/不锈钢/高强钢焊管厂家推荐
  • 2025 年钢管厂家最新推荐榜:覆盖精密钢管、汽车钢管、高强钢钢管等品类,为下游采购企业提供权威选品参考
  • ubuntu24.04 server 版本安装xfce 使用web novnc 远程桌面
  • 数据结构做题记录
  • 生成函数入门
  • 2025 年 PPT 生成工具品牌最新推荐榜单:AI 备案技术加持 + 千万用户信赖,优质工具全方位测评ppt一键生成/自动生成ppt/ppt制作ai工具推荐
  • 2025 国内西服定制品牌口碑榜:私人/西服/婚礼/高级/高端/高档/男士/女士/轻奢/企业团体职业/企业高管/商务/手工/休闲西服定制厂家推荐
  • 题解:P14023 [ICPC 2024 Nanjing R] 社交媒体
  • 2025 全合成润滑油厂家企业推荐榜:进口润滑油/国产润滑油/国内润滑油/半合成润滑油厂家,技术与服务双驱发展
  • docker安装iotdb
  • ALV 按钮置灰
  • 微算法科技(NASDAQ MLGO)创建企业级区块链双层共识算法:融合优化DPoS与动态BFT的协同机制设计
  • CKS-CN 考试知识点分享(14) Istio网络策略 - 实践
  • 2025年10月叛逆青少年改造机构全景解析报告,基于专业测评的技术、性能及市场优势深度分析
  • 2025年10月微高压氧舱厂家全景解析报告,基于专业测评的技术、性能及市场优势深度分析
  • Kubernetes应用微服务 - 指南
  • 看板(Kanban)的使用
  • 第一个 AI 应用
  • 软件工程课程第二次团队作业
  • AGC 板刷记录2
  • 2025 年涿州装修公司最新推荐榜,深度解析企业服务能力与市场口碑优势
  • 结对编程项目总结
  • 常用linux命令
  • MSRC 2025年第二季度顶级安全研究员荣誉榜
  • 03-串口-铁头山羊STM32标准库新版笔记
  • TabControl控件
  • 权威调研榜单:硬质合金挤压模具厂家TOP3综合实力深度解析
  • 详细介绍:【Linux指南】gdb进阶技巧:断点高级玩法与变量跟踪实战
  • Nacos 3.1.0 正式发布,支持 A2A 注册中心与 MCP 注册协议增强