【发布时间】:2011-03-25 11:08:38
【问题描述】:
如何将参数传递给从 Outlook 调用的 Excel VBA 代码?
【问题讨论】:
标签: vba excel outlook ms-office
如何将参数传递给从 Outlook 调用的 Excel VBA 代码?
【问题讨论】:
标签: vba excel outlook ms-office
通过使用Application.Run:
objExcel.Run "MacroName", param1, param2
【讨论】:
您可以通过Application.Run 方法执行宏。此方法将宏名称作为第一个参数,然后将最多 30 个参数作为参数传递给宏。
在 Outlook 中使用以下代码:
Public Sub RunExcelMacro()
Dim excelApp As Object
Set excelApp = CreateObject("Excel.Application")
excelApp.Visible = True
' open the workbook that contains the macro
' or place the macro in a workbook in your XLSTARTUP folder
excelApp.Workbooks.Open "C:\tmp\book.xls"
' run the macro
excelApp.Run "ThisWorkbook.SayHello", "Hello World!"
excelApp.Quit
Set excelApp = Nothing
End Sub
在 Excel 中,将以下方法添加到电子表格文档的 ThisWorkbook 元素:
Option Explicit
Public Sub SayHello(message As String)
MsgBox message
End Sub
【讨论】: