Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/vba/15.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Vba 为什么';这个shell代码不能工作吗?_Vba - Fatal编程技术网

Vba 为什么';这个shell代码不能工作吗?

Vba 为什么';这个shell代码不能工作吗?,vba,Vba,我在VBA工作。现在,我在UserForm3中。有一个文本框,显示用户定义的路径 我接下来需要做的是打开文件。我试着用一个外壳,但它不起作用。有人知道为什么吗 Private Sub Open_Button_Click() Dim myPath As String myPath = FileName.Text 'Gets the string, FileName, from module 1 Dim shell As Object Set shell = CreateObject("Sh

我在VBA工作。现在,我在UserForm3中。有一个文本框,显示用户定义的路径

我接下来需要做的是打开文件。我试着用一个外壳,但它不起作用。有人知道为什么吗

Private Sub Open_Button_Click()

Dim myPath As String
myPath = FileName.Text    'Gets the string, FileName, from module 1
Dim shell As Object
Set shell = CreateObject("Shell.Application")
shell.Open myPath

End Sub
我更喜欢使用的替代版本是:

Private Sub Open_Button_Click()

Dim shell As Object
Set shell = CreateObject("Shell.Application")
shell.Open FileName

End Sub
也许我只是累了,但我不明白为什么它不起作用。我已经玩了一段时间了

我正在使用Autodesk Inventor 2011…通过VBA编辑器运行它

提前谢谢你, 艾莉莎

JPEG:



编辑1,到目前为止已尝试的内容:

(来自评论中的帮助)

-将其从模态设置为无模态(不发生任何情况)

-双击文件以确保其打开(确实打开)

-将文件放在单独的模块中并运行(不会发生任何事情)

明白了

Private Sub Open_Button_Click()

Dim myPath As String
myPath = FileName.Text    'Gets the string, FileName, from module 1
Dim Shell As Object
Set Shell = CreateObject("Shell.Application")
Shell.Open (myPath)

End Sub

我刚刚在Shell.Open函数中包含了“myPath”

会发生什么?错误消息?什么类型的文件?双重检查
Filename
是否有值?根本不会发生任何事情。它没有任何作用。没有错误,什么都没有。是的,filename有一个值。它是什么类型的文件?一个人说了一些关于在系统->高级->环境变量->路径中识别Autodesk Inventor的内容…这是必要的吗?我测试了shell以打开Autodesk Inventor,它工作得很好。如果将代码放在普通的模块子模块中并运行它,它会工作吗?根本想不到会发生什么!