首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >复制源文件时管理Excel源代码工作簿中的链接

问复制源文件时管理Excel源代码工作簿中的链接
EN

Stack Overflow用户
提问于 2018-07-12 09:00:14
回答 1查看 21关注 0票数 0

我有三个文件:

Activefile -存储和运行我的代码

Databasefile -保存原始数据的地方(有大量的保护)

Copyofdatabasefile -是一个没有保护的副本。

我有一个在activefile中运行的宏来更新数据库文件excel文件,在后面的宏中,我使用数据库文件上的saveas方法来创建一个版权数据库文件,我删除了一些功能,让人们可以轻松地访问数据,而不需要对主数据库文件进行一些检查。

在保存复制数据库文件时,将更新我的活动文件中的链接,以查看新的复制数据库文件。我不希望这种事发生。

如何调整excel链接/代码,以确保我的文件中的链接不被传输到复制数据库文件

保存作为宏选项当前如下:

代码语言:javascript
复制
Databasefile.SaveAs filename:="\\somelocation\copyofdatabasefile.xlsx", FileFormat:=51, CreateBackup:=False
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2018-07-12 09:15:10

使用Workbook.SaveCopyAs法应该有效。

如果您的原始文件是xlsx,请使用

代码语言:javascript
复制
Databasefile.SaveCopyAs Filename:="\\somelocation\copyofdatabasefile.xlsx"

注意,它只保存在与原始文件相同的FileFormat中!

如果原始文件是xlsm,请使用

如果您需要更改文件格式(如从xlsm到xlsx),您需要首先以原始文件格式保存为副本,然后用Workbooks.Open()重新打开该副本,然后使用.SaveAs更改FileFormat。

代码语言:javascript
复制
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
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/51301369

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档