我有一个宏,目前我们下载一个电子表格更新:它会自动打开(但不保存)--来自我们自定义的内部 Web 界面。电子表格名称每次都会更改。当前的使用说明是打开 VBA 编辑器,将宏复制到新模块中,然后运行宏。
我想制作一个独立文件来制作类似这样的说明,打开工作簿,然后双击文件。
我的想法是,他们只能打开有问题的工作簿,独立文件代码将是类似的use open workbook
(非常通用)。
我读过关于 vbs 的文章,但我所做的只是将我的宏从 .txt 更改为 vbs,显然它还不起作用。有人能给我指出正确的方向吗?
答案1
虽然我能够让它工作,但我没有使用这种方法,因为它涉及在 Office 中启用“信任 VBA 项目”设置,这对我来说听起来不安全。
它的工作原理如下:
Dim xlApp, xlBook
Set xlApp = getObject( , "Excel.Application")
Set xlBook = xlApp.ActiveWorkbook
xlBook.VBProject.VBComponents.Import "\\PATH\Module1.bas"
xlApp.Run "Sub_Name"
'objExcel.ActiveWorkbook.Close
xlApp.Application.Quit
WScript.Echo "Finished."
WScript.Quit
我最终做的是通过 --> 分发自定义“OfficeUI”https://www.freesoftwareservers.com/display/FREES/Distributing+Macro+via+Add-In+-+Customized+Ribbon+-+Via+Batch
由于某种原因,在通过我们的 Web 界面中的链接加载 Excel 时,XLSTART 和 Personal.xlsb 中的文件均未加载。但是,OfficeUI 自定义功能区已加载。我仍然将 AddIn.xlam 放入 XLSTART,因为 Excel 不会警告“宏”,但它在启动时未加载。不过这没关系,因为 OfficeUI 直接调用了文件 !Sub。