我有一个宏,它列出了某个文件夹中的文件,并将它们放在列表框中。地址的地址为静态形式。我希望您向我指出,此地址取决于单元J1中的路由。宏如下
Private Sub Userform_initialize()
Application.EnableEvents = False
c00 = "C:UsersDownloads" 'change path to suit
c01 = Dir(c00 & "*.pdf")
With CreateObject("scripting.filesystemobject")
Do While c01 <> "" c02 = c02 & "|" & .GetBaseName(c00 & c01)
c01 = Dir
Loop
End With
With ListBox1
.ListIndex = -1
.List = Split(Mid(c02, 2), "|")
End With
Application.EnableEvents = True
End Sub
Private Sub ListBox1_Click() 'change path to suit
Filename = "C:UserDownloads" & ListBox1.Value & ".pdf"
ShellExecute 0, "Open", Filename, "", "", vbMaximizedFocus
ListBox1.ListIndex = -1
End Sub
只需将静态字符串替换为范围的值(" J1"(
Private Sub Userform_initialize()
Application.EnableEvents = False
c00 = Range("J1").Value 'change path to suit
c01 = Dir(c00 & "*.pdf")
With CreateObject("scripting.filesystemobject")
Do While c01 <> "" c02 = c02 & "|" & .GetBaseName(c00 & c01)
c01 = Dir
Loop
End With
With ListBox1
.ListIndex = -1
.List = Split(Mid(c02, 2), "|")
End With
Application.EnableEvents = True
End Sub
Private Sub ListBox1_Click() 'change path to suit
Filename = Range("J1").Value & ListBox1.Value & ".pdf"
ShellExecute 0, "Open", Filename, "", "", vbMaximizedFocus
ListBox1.ListIndex = -1
End Sub