我已将对象插入Excel。该对象是一个exe(控制台应用程序)。
我可以通过双击来调用该应用程序。但是,我需要使用参数调用它(即调用它的文档的文件路径)。如何用参数调用这个exe?
答案 0 :(得分:4)
OP要求提供一种包含参数的方法,这在接受的解决方案中似乎是不可能的。我以不同的方式实现了这一点。此代码将文件提取到工作簿的目录,然后执行它。
Sub saveAndRunFileExample()
ActiveSheet.OLEObjects(1).Copy
CreateObject("Shell.Application").Namespace(ActiveWorkbook.Path).Self.InvokeVerb "Paste"
Call Shell(ActiveWorkbook.Path & "\example.exe --parameter", vbNormalFocus)
End Sub
答案 1 :(得分:2)
如果您使用以下步骤将.exe导入Excel:
然后你就可以编写VBA子程序/宏了(我使用矩形对象通过点击它来执行宏):
Sub RoundedRectangle1_Click()
Dim ws As Worksheet
Dim oo As OLEObject
Set ws = Sheets("Sheet1")
Set oo = ws.OLEObjects("Object 1")
oo.Verb xlVerbPrimary
End Sub