更改您所采用的路线的宏,是指示单元格的宏

  • 本文关键字:指示 单元格 excel vba
  • 更新时间 :
  • 英文 :


我有一个宏,它列出了某个文件夹中的文件,并将它们放在列表框中。地址的地址为静态形式。我希望您向我指出,此地址取决于单元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

最新更新