【发布时间】:2015-04-29 16:14:48
【问题描述】:
我在 Excel 的快速访问工具栏中有一个自定义按钮(不是加载项,只是一个“快捷方式”按钮),用于在活动工作簿中运行宏。每天都会使用新文件名修改和保存工作簿。当链接首次在活动工作簿中创建(称为版本 1)时,宏运行良好。但是第二天(文件名现在是版本 2)单击宏按钮会打开工作簿版本 1 并运行保存在版本 1 中的宏。
有没有一种简单的方法可以断开链接并在最近的活动工作簿中运行宏?
代码是基本的 - 它只是打开一个用户表单并保存在“ThisWorkbook”中
Sub OPEN_DATA_USERFORM()
ufDATA.Show
End Sub
【问题讨论】:
-
查看代码会有所帮助。自定义按钮是在加载项中还是在每个工作簿中?
-
所以你的宏包括打开那个文件然后在里面运行一些命令?考虑将所有这些工作簿放在同一个文件夹中,并让 VBA 打开最近保存(= 最新)的一个。
-
是的,快速访问功能区中的按钮运行打开用户表单的一小段代码。然后用户窗体可以运行其他宏。工作簿保存在同一个文件夹中,我只希望代码在活动工作簿中打开用户窗体,而不是在以前保存的工作簿中。
-
您好,作为建议,您可以在工作表中放置一个按钮并将宏分配给该按钮而不是功能区吗? :)
-
这就是我一直在做的事情,但是为了清理工作区并使代码可以从每张工作表中访问,我更喜欢从快速访问工具栏中的图标运行宏。