2016-11-26 86 views
0

我想在不打开我的实际excel文件的情况下运行存储在个人文件中的宏。在不打开excel的情况下运行personal.xlsb宏

如何修改下面的代码来实现这一

Set objExcel = CreateObject("Excel.Application") 
objExcel.Application.Run "'D:\Sample SSRS\power View\AlertHistory.xlsm'!Module1.getDataImported" 
objExcel.DisplayAlerts = False 
objExcel.Application.Quit 
Set objExcel = Nothing 

我的另一个问题是,我试图记录打开的Excel的mysql选项,并附加数据宏但功能没有被记录下来。我想从表1中的所有数据添加到我的MySQL表

回答

1

的代码是正确的,你只需要改变的路径和可能的模块名称。让你的个人路径的简单和稳健的方法是取消隐藏您的个人文件(查看>取消隐藏...):

1: get personal path

然后做一个“另存为”。不要真的保存它。只需按住Shift键并在文件上右键单击>单击“复制为路径”:

enter image description here

然后粘贴到您的VBScript。这会给你包括文件名的文件路径。在代码中,'Module1'是包含要运行的代码的模块的名称。 'getDataImported'是要运行的宏的名称(在模块内)。根据需要更改这些。

记得查看>再次隐藏您的个人文件,否则将始终可见每次打开Excel时。

+0

嗨大卫,感谢您的回答。同意保存个人文件的文件路径VBS将运行它,但我需要的代码要在不同的Excel中运行。作为个人存在文件A&这里的代码需要进行实际的数据文件是文件B.我如何让它执行上的文件B.宏操作 – Abey

相关问题