我有一个带有.xlsb扩展名的Excel文件,并使用它的宏根据内容生成其他几个Excel工作表。这些宏以一种方式工作,即他们更改原始Excel文件,然后使用SaveCopyAs
方法保存生成的Excel工作表。Excel VBA:SaveCopyAs具有不同的文件扩展名
生成的Excel工作表应以.xlsx扩展名和格式保存。
使用ActiveWorkbook.SaveCopyAs“C:\ TEMP \ XXXX.XLSX”方法不适用于我,因为虽然它确实更改了扩展名,但它不会更改文件格式,因此当用户打开生成的Excel文件时,会收到警告消息(类似“文件扩展名和格式不匹配”)。 SaveCopyAs
方法没有任何其他参数。
如何将原始.xlsb文件的副本保存为扩展名和格式以更改为.xlsx?
注意:Workbook.SaveAs方法确实有一个fileformat
选项,不知道这是否有助于/相关。
是否有任何理由将您的文件复制一份?您是否可以不只是创建新的工作簿,而是直接写入新工作簿中的工作表或复制新工作簿中的内容? – Zac
除了我真的是VBA的新手之外,没有什么特别的理由。如果一旦生成了内容,只需创建一个新的Excel表格,将原始文件中的一个标签复制到这个新文件中,然后将新文件保存在正确的文件名下,就完全可行。你认为你可以给我一个示例代码吗? – Istvanb
如果您可以提供您的代码,我们可以提供帮助 – Zac