VB脚本保持给我“macros可能不可用在此工作簿或所有macros可能被禁用”

很长一段时间读者第一次海报….这就是这些通常如何去。 我一直在试图做一个简单的VBS,只是打开Excel并运行一个特定的macros。 我几个月前发誓,当我写这个工作。 我search了类似的错误论坛,没有任何build议似乎已经为我工作。

有任何想法吗?

Option Explicit Dim xlApp, xlBook Set xlApp = CreateObject("Excel.Application") xlApp.DisplayAlerts=false Set xlBook = xlApp.Workbooks.Open("C:\Users\lnguy\Desktop\New Chemical Receipt Form.xlsm", 0, True) xlApp.Run "'C:\Users\lnguy\Desktop\New Chemical Receipt Form.xlsm'!Expired2" xlBook.Close xlApp.Quit Set xlBook = Nothing Set xlApp = Nothing WScript.Echo "Finished." WScript.Quit 

你有第二次提到它( FTO Development\ is missing)有不同的path,所以macros找不到。

我build议通过使用pathvariables来防止发生这种情况:

 Dim path path = "C:\Users\lnguy\Desktop\FTO Development\New Chemical Receipt Form.xlsm" ' .... Set xlBook = xlApp.Workbooks.Open(path, 0, True) xlApp.Run "'" & path & "'!Expired2" 

将macros从Worksheet1移动到它自己的模块,并确保它是一个Public Sub因此它可以被引用。