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

标签 excel vba batch-file command-line

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

假设 Windows NT 环境。

最佳答案

您可以启动 Excel、打开工作簿并从 VBScript 文件运行宏。

将以下代码复制到记事本中。

更新“MyWorkbook.xls”和“MyMacro”参数。

使用 vbs 扩展名保存并运行它。

Option Explicit

On Error Resume Next

ExcelMacroExample

Sub ExcelMacroExample() 

  Dim xlApp 
  Dim xlBook 

  Set xlApp = CreateObject("Excel.Application") 
  Set xlBook = xlApp.Workbooks.Open("C:\MyWorkbook.xls", 0, True) 
  xlApp.Run "MyMacro"
  xlApp.Quit 

  Set xlBook = Nothing 
  Set xlApp = Nothing 

End Sub 

运行宏的关键行是:

xlApp.Run“MyMacro”

关于excel - 从命令行或批处理文件运行 Excel 宏的方法?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2050505/

相关文章:

vba - Excel VBA中的Vlookup日期

batch-file - 相当于 PIPESTATUS 的批处理文件

excel - 如何将 1 添加到 Excel 中最近的重复行?

java - 如何使用 sprint-test-mvc 测试返回 .xls 文件的 Controller 方法

ms-access - 我希望将特定的 Access 表字段导出到特定的 Excel 单元格。我的 vba 代码无法运行

excel - 根据月份和年份查找单元格的值

excel - 如何提取一系列数字以及一个字母后跟另一个数字系列?

excel - 如何使用表中不同行的值运行 Excel 宏?

maven - 为什么批处理中的一组命令在仅运行某些命令后往往会停止?

batch-file - 在 Windows 批处理中将十六进制值写入文件