在MS Project 里面我可以用commondialog来存放或者读取文件的文件名和路径。
但这路径我一般是放在某个变量里的 比如放在label1.caption里面
但是如何根据这存贮的路径自动打开文件?
我用了 openfile 函数 结果不行,是因为MS Project的缘故吗?
第1个回答 2013-07-22
打开文件一般是用Open语句的
Open "C:\1.txt" for input As #1
........
Close #1追问
Function OpenURL(ByVal url As String)
Dim lngReturn As Long
lngReturn = ShellExecute(0, "open", url, "", Mid(URL, 1, InStrRev(url, "\") - 1), 1)
End Function
Open "C:\1.txt" for input As #1
........
Close #1追问
这是后台打开吧 我想要窗口打开。
追答哦,是不是你需要说的是,如何在vba中运行别的文件或者程序,就像在我的电脑中双击打开一样?是这个意思吗?
追问是的。实际上我知道有个函数是这样的:
mOpen = shell ( " explorer.exe C:\book1.xls" , vbNormalFocus)
这函数运行就像是在窗口双击打开book1.xls工作簿一样。关键我不知道怎么把这文件路径改成 label1.caption (前提是 label1.caption = commondialog1.filename) 我各种尝试了结果都不行。
Function OpenURL(ByVal url As String)
Dim lngReturn As Long
lngReturn = ShellExecute(0, "open", url, "", Mid(URL, 1, InStrRev(url, "\") - 1), 1)
End Function
试试这个函数!
本回答被提问者采纳第2个回答 2013-07-23
'openfile不是vb内置函数,filesystemObject倒是有个 opentextfile
label1.caption=Commmondialog1.filename
dim text as string
text=createObject("Scripting.filesystemObject").OpenTextFile(label1.caption).readAll
label1.caption=Commmondialog1.filename
dim text as string
text=createObject("Scripting.filesystemObject").OpenTextFile(label1.caption).readAll