相关疑难解决方法(0)

从命令行或批处理文件运行Excel宏的方法?

我有一个Excel VBA宏,我需要在从批处理文件访问文件时运行,但不是每次我打开它(因此不使用打开的文件事件).有没有办法从命令行或批处理文件运行宏?我不熟悉这样的命令.

假设一个Windows NT环境.

excel command-line vba batch-file

73
推荐指数
4
解决办法
25万
查看次数

在Windows Server上运行SAS Enterprise Guide Job

我在SAS EG中编写了一段代码,只是打开一个Excel工作簿.Excel工作簿包含在"工作簿打开"事件上执行的VBA代码.所有代码都是如此,它是在每天第一次打开时刷新所有数据连接.

当我手动运行SAS程序时,它完全按计划运行.它打开Excel文件,然后触发VBA宏.但是,当我在我的服务器上安排SAS EG作业时,作业运行但我的Excel文件没有任何反应.我的SAS代码或My Windows Scheduler日志中也没有出现任何错误.

这是我的SAS代码:

options noxwait noxsync;
x '"C:\Program Files\Microsoft Office\Office15\excel.exe" "\\route\to\file\excel_macro_playground.xlsm"';
run;
Run Code Online (Sandbox Code Playgroud)

这是我的VBA:

Private Sub Workbook_Open()
    Dim wsSheet As Worksheet
    On Error Resume Next
    Set wsSheet = Sheets("book_helper")
    On Error GoTo 0

    If wsSheet Is Nothing Then
        Sheets.Add.Name = "book_helper"
        ActiveWorkbook.RefreshAll
        Sheets("book_helper").Range("A1").Value = Date
        Sheets("book_helper").Visible = xlVeryHidden
        Application.DisplayAlerts = False
        ThisWorkbook.Save
        Application.DisplayAlerts = True
        Application.Quit
    Else
        If Sheets("book_helper").Range("A1").Value < Date Or Sheets("book_helper").Range("A1").Value = "" Then
            ActiveWorkbook.RefreshAll
            Sheets("book_helper").Range("A1").Value = Date
            Sheets("book_helper").Visible = xlVeryHidden
            'ActiveWorkbook.Close savechanges:=True
            'Application.Quit
            Application.DisplayAlerts …
Run Code Online (Sandbox Code Playgroud)

excel vba sas excel-vba enterprise-guide

5
推荐指数
1
解决办法
416
查看次数

如果使用vb脚本调用宏,则会禁用宏

我试图用vbs调用我的excel宏.这是我的代码片段.

Set objExcel = CreateObject("Excel.Application")
Set objWorkbook = objExcel.Workbooks.Open("C:\Folder\Test_PO.xls")
objExcel.Application.Visible = True
objExcel.Application.Run "C:\Folder\Test_PO.xls!Data_Analysis"
objExcel.ActiveWorkbook.Close
objExcel.Application.Quit
WScript.Echo "Finished."
WScript.Quit
Run Code Online (Sandbox Code Playgroud)

现在问题是我能够打开文件,但宏以某种方式在这里被禁用并显示给我'macro may not be present or may be disabled'.我确定我正在调用正确的宏名称,但是一旦文件被打开,加载项选项卡我已经配置了宏来运行得到消失.如果我手动打开文件,这不会打开,我可以看到选项卡并从选项卡本身运行宏.有什么建议我如何克服这个问题并让宏运行?

vbscript vba

4
推荐指数
1
解决办法
7944
查看次数