我一直在尝试使用VB6中的ShellExecute方法打开文件,文件名将从表单中的文本框中获取。但是文件没有打开也没有错误。
但是,如果我直接传递文件名而不是从变量引用,则相同的方法可以顺利运行。以下代码供参考。不确定问题存在的地方但是非常感谢任何帮助。
WorkingCode
ShellExecute 0, vbNullString, "F:\Desktop\SBKL\template.xlsx", vbNullString, vbNullString, vbNormalFocus
非工作代码
Dim FlNme As String
FlNme = Trim(Me.T_Doc_Link.Text)
ShellExecute 0, vbNullString, FlNme, vbNullString, vbNullString, vbNormalFocus
答案 0 :(得分:1)
在致电ShellExecute()
之前,您应该使用Dir$()
检查文件是否存在,并在路径和/或文件错误时警告用户:
If Dir$(FlNme, vbNormal) = vbNullString Then
MsgBox "File not found:" & vbCrLf & FlNme
Exit Sub
End If
ShellExecute 0, vbNullString, FlNme, vbNullString, vbNullString, vbNormalFocus