我正在尝试制作除xls(word文件,powerpoint文件和pdf文件)之外的excel打开文件。我只使用excel文件(显而易见的原因)。有没有办法让excel使用默认程序打开文件。例如,如果我打开.doc文件,它应该使用Word,但如果我打开.pdf它应该使用Acrobat(或其他pdf阅读器)。我正在使用超链接。我会告诉你到目前为止我得到了什么:
我有一个列表(在本例中为Listbox2),其中包含一个用于加载特定文件夹中所有文件的代码:
Private Sub UserForm_Initialize()
Dim MyFolder As String
Dim MyFile As String
Dim j As Integer
USER = TextBox99
MyFolder = "C:\Example"
MyFile = Dir(MyFolder & "\*.*")
Do While MyFile <> ""
ListBox2.AddItem MyFile
MyFile = Dir
Loop
End Sub
假设在listbox2中我有文件word.doc,powerpoint.ppt,excel.xls和acrobat.pdf。如果我从listbox2中选择文件并按下带有以下代码的按钮:
Private Sub CommandButton14_Click()
Dim strFileandPath As String
strFileandPath = "C:\Example\" & UserForm1.ListBox2.Column(0)
Workbooks.Open strFileandPath
End Sub
它只会打开excel文件。其他人会给我一个错误。有没有办法让Excel使用PC中的默认程序打开任何类型的文件。谢谢你的关注!
干杯
答案 0 :(得分:0)
我已经打开了pdf和word文件,但现在我无法打开excel文件。积分转至user1302114(How can Excel VBA open file using default application)。
我使用的代码:
Dim Shex As Object
Set Shex = CreateObject("Shell.Application")
tgtfile = "C:\Example" & UserForm1.ListBox2.Column(0)
Shex.Open (tgtfile)
我还在Tools-Preferences
中启用了Acrobat和word库