我用:
retVal = Shell("program.EXE " & filename, vbNormalFocus)
执行一个程序需要我的Excel电子表格。
是否有可能将EXE文件embedded到Excel文件本身?
那我怎么执行呢?
Ideias:
1 – 某种types的bin2str函数将二进制转换为string(所以我可以将它作为一个variables和一个str2bin (反)
2 – 我读了一些关于OLE控制 (你可以在那里embedded),但我真的不知道从哪里开始
这是避免OLE的大纲解决方案:
当你想要保存和执行exe文件时,显然你需要反转这个过程。
您可以通过使用以下操作来完成此操作:插入>对象,然后选择“从文件创建”。
使用VBA将其添加到您的工作表:
Dim o As OLEObject Set o = ActiveSheet.OLEObjects.Add(Filename:="C:\program.exe")
那么这是执行program.exe的命令:
o.Verb Verb:=xlPrimary
不知道如何传递参数,但是(例如你的filename
)。
注意:不可信应用程序在运行时会提示警告。