我有三个文件:
Activefile-我的代码存储和运行的地方
数据库文件-我的原始数据存放在这里(有很多保护)
Copyofdatabasefile-是没有保护的副本
我有一个在 activefile 中运行的宏来更新 databasefile excel文件,稍后在该宏中,然后在 databasefile中使用saveas方法< / em>制作 copyofdatabasefile 文件,我删除了一些功能,使人们可以轻松访问数据,而无需对主 databasefile 进行某些检查。
保存 copyofdatabasefile 时,活动文件中的链接会更新,以查看新的 copyofdatabasefile 文件。我不希望这种情况发生。
如何调整我的Excel链接/代码,以确保文件中的链接不会传输到 copyofdatabasefile ?
Saveas宏选项当前为:
Databasefile.SaveAs filename:="\\somelocation\copyofdatabasefile.xlsx", FileFormat:=51, CreateBackup:=False
答案 0 :(得分:1)
使用Workbook.SaveCopyAs Method应该可以。
如果您的原始文件是xlsx,请使用
Databasefile.SaveCopyAs Filename:="\\somelocation\copyofdatabasefile.xlsx"
请注意,它仅以与原始文件相同的FileFormat保存!
如果您的原始文件是xlsm,请使用
如果您需要更改文件格式(例如,从xlsm
更改为xlsx
),则需要先以原始文件格式另存为副本,然后使用Workbooks.Open()
重新打开该副本,然后然后使用.SaveAs
更改文件格式。
Databasefile.SaveCopyAs Filename:="\\somelocation\copyofdatabasefile.xlsm" 'if original file was xlsm
Dim wb As Workbook
Set wb = Workbooks.Open("\\somelocation\copyofdatabasefile.xlsm")
wb.SaveAs filename:="\\somelocation\copyofdatabasefile.xlsx", FileFormat:=51, CreateBackup:=False
wb.Close False
Kill "\\somelocation\copyofdatabasefile.xlsm" 'delete old format