[英]vba application.filesearch update
所以我正在嘗試調整我找到的一些代碼以滿足我的需要。 我對 VBA 非常菜鳥,但我遇到了 application.filesearch 方法在 2010 年不可用的問題。
我的 excel 工作簿有一個我想要打印的 20k 個超鏈接的 .pdf 文件的列表,但是這個腳本只是為了讓我點擊宏並一次打印一些,我還沒有寫出打印出來的部分我想打印的選定部分,而不是整個內容。 但我所有的超鏈接都在 A 列中。
Sub AutoPrintPDFs()
Dim Folder As String
Dim FName As String
Dim bk As Workbook
Dim strPath As String
strPath = ThisWorkbook.Path
With Application.FileSearch
.SearchSubFolders = True
.LookIn = strPath
.FileType = msoFileTypeAllFiles
If .Execute() > 0 Then
For i = 1 To .FoundFiles.Count
If .FoundFiles(i) Like "*.pdf" Then
ActiveWorkbook.FollowHyperlink .FoundFiles(i), NewWindow:=True
Application.SendKeys "^p~", False
Application.Wait (Now + TimeValue("0:00:05"))
Application.SendKeys "%{F4}", False
Application.Wait (Now + TimeValue("0:00:05"))
End If
Next i
Else
MsgBox "All files done."
End If
End With
End Sub
我希望你能幫助我解決這個 application.filesearch 部分,我一直在尋找幾個小時,我只是一直在尋找其他人的腳本非常特定的替代功能。
所以我一直在研究這個,我放棄了宏方法,轉而使用一種非常基本的方法,只需單擊每個 pdf。
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If Target.Cells.Count <> 1 Then Exit Sub
On Error Resume Next
Application.ActiveWorkbook.FollowHyperlink Address:=CStr(Target.Value), NewWindow:=True
Application.Wait (Now + TimeValue("0:00:03"))
Application.SendKeys "^p~", False
Application.Wait (Now + TimeValue("0:00:05"))
Application.SendKeys "%{F4}", False
End Sub
我對如何使這個更加用戶友好和/或學習 API 重點的任何其他建議非常感興趣,所以我可能會有一個對話框來確認我是否要打印所選的 pdf。
我確實有一個對話框設置,但是一旦我單擊以確認對話框,我無法弄清楚如何將焦點重新放在 adobe 閱讀器上,我確實在腳本中延遲了我可以單擊回到 adobe 閱讀器的位置發送密鑰,但手動我比腳本快,所以我選擇不使用它。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.