【发布时间】:2015-10-01 20:16:15
【问题描述】:
我正在创建一个带有下拉框 Combo_History 的 vba-access 应用程序,它使用户能够从名为“扫描的工作订单(档案)”的主文件夹中的子文件夹中启动 .pdf 文件。我想要做的是使用一个称为“M”号的特定数字(M 号,因为每个数字都以 M 开头:M765196)在不使用特定子文件夹的情况下找到这个文件,这是我到目前为止所拥有的:
Dim fso, oFolder, oSubfolder, oFile, queue As Collection
Set fso = CreateObject("Scripting.FileSystemObject")
Set queue = New Collection
queue.Add fso.GetFolder("T:\Scanned Work Orders (Archives)")
Do While queue.Count > 0
Set oFolder = queue(1)
queue.Remove 1 'dequeue
If oFile = Combo_History.Value Then
Application.FollowHyperlink ("T:\Scanned Work Orders (Archives)" & oFile)
End If
For Each oSubfolder In oFolder.SubFolders
queue.Add oSubfolder 'enqueue
Next oSubfolder
For Each oFile In oFolder.Files
If oFile = Combo_History.Value Then
Application.FollowHyperlink ("T:\Scanned Work Orders (Archives)" & oFile)
End If
Next oFile
Loop
问题是它陷入了无限循环,因为它无法找到关键字名称为 M765196 的 .pdf,即使它位于该文件夹中。我有什么遗漏吗?还是找到 .pdf 文件的更简单方法?
【问题讨论】: