前幾天寫了一個一鍵合併多個EXCEL工作簿的程式碼之後,
有網友提出能不能寫一個一鍵查詢多個工作簿下所有工作表內的值,並將這些值自動標紅的程式碼。
《一鍵合併多個EXCEL工作簿的程式碼》詳情點選下面連結:↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓
https://www。toutiao。com/i6900811064116855303/
我覺得這是個非常實用的技能,於是花了點心思研究出來了,並稍稍將程式碼優化了下,以便適應於更多場景。
原始碼如下:
Sub find_value()
Dim rng As Range
Dim wb As Workbook
Dim str As String
Dim sht As Worksheet
spath = InputBox(“請輸入需要合併工作簿的檔案路徑,比如檔案在D盤的a資料夾下,則輸入D:\a”)
Text = InputBox(“請輸入需要查詢的資料”)
str = Dir(spath & “\*。xls*”)
Application。DisplayAlerts = False
For i = 1 To 200
Set wb = Workbooks。Open(spath & “\” & str)
For Each sht In wb。Sheets
Set rng = sht。Cells。find(Text)
If Not rng Is Nothing Then
For j = 1 To 1000
Set rng = sht。Cells。FindNext(rng)
rng。Interior。Color = 255
If rng Is Nothing Then
Exit For
End If
Next
End If
Next
wb。Save
wb。Close
str = Dir
If str = “” Then
Exit For
End If
Next
Application。DisplayAlerts = True
End Sub
以下是程式碼的演示影片:
影片載入中。。。
程式碼使用方法:
1、首先新建一個工作簿,開啟“開發工具”選項卡下的“visual basic”工具。
2、在visual basic編輯工具裡選擇一個工作表,再點選插入,然後點選“模組”。
3、在模組編輯欄裡將程式碼貼上進去,
需要執行程式碼就按鍵盤的F5即可
。
關於程式碼簡單說明下:
程式碼可以自定義工作簿所在的資料夾,自定義需要查詢的內容,這在執行程式碼之前就會彈出對話方塊提示,根據提示輸入資料夾路徑與需要查詢的內容即可。
最後喜歡的同學記得加個關注點個收藏[紫薇別走][紫薇別走][紫薇別走]