从解压的XML文件夹中重新创建Excel .xlsx文件

8
我正在尝试将一个由解压缩Excel文件而创建的XML文件夹转换回Excel .xlsx格式。但是我收到了以下错误消息:
“因为它是损坏的,Microsoft Excel无法打开或修复此工作簿。”
以下是生成此错误的最小可重现示例:
1. 在Excel中创建新的空白电子表格。 2. 在单元格A1中输入“test”。 3. 另存为 `test.xlsx`。 4. 将文件重命名为 `test.zip`。 5. 将 `test.zip` 解压缩为一个名为 `test` 的文件夹。 6. 将 `test` 压缩为 `test_new.zip`。 7. 将 `test_new.zip` 重命名为 `test_new.xlsx`。 8. 使用Excel打开 `test_new.xlsx`。
我已经使用了7zip、WinZip和PeaZip进行压缩和解压缩,但结果都相同。我做错了什么?如何将解压缩的Excel工作簿转换回其原始形式?

请遵循此SuperUser帖子的建议,不要解压缩zip文件夹,而是在7Zip中进行编辑(右键单击项目以编辑)。然后保存以自动替换存档中的文件。 - Parfait
2个回答

18

我最终成功地自己找到了解决方法。关键是在创建新的压缩文件时,必须仅将未压缩文件夹的内容添加到存档中。而不是整个文件夹本身!


0

在苦苦挣扎了几个小时后,我找到了一个使用WinRAR(v.5.71 64位)和Office 2019(16.0.13426.20270 32位)的解决方案:

  1. 创建一个新的Excel文件(例如.xlsm)
  2. 将其扩展名更改为.zip
  3. 提取内容到任何您想要的文件夹中
  4. 将内容(如dww所建议的)添加到新的WinRAR存档中。我通过选择所有内容,右键单击并选择“添加到存档...”来完成此操作。
  5. 在WinRAR菜单和常规选项卡下,在存档格式下选择ZIP
  6. 在WinRAR菜单和常规选项卡下,在压缩方法下选择“最快”
  7. 我没有更改任何其他参数,但这里有一些默认值(以防您的默认值不同)。字典大小:32 kB,分割成卷,大小:空白,更新模式:添加和替换文件,存档选项:未选择任何选项
  8. 选择您想要的任何名称作为新的.zip文件
  9. 点击确定
  10. 将扩展名从.zip更改为.xlsm
  11. 在Excel中打开您的新.xlsm文件

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接