Board logo

標題: [發問] 如何用VBA加強"尋找及取代"功能 [打印本頁]

作者: jesscc    時間: 2019-2-24 22:54     標題: 如何用VBA加強"尋找及取代"功能

本帖最後由 jesscc 於 2019-2-24 22:56 編輯

Excel的"尋找及取代"功能,可以用"全部尋找"把含有關鍵字的資料全部找出,但是它只能指出這些資料所在的儲存格。
我想用上面這種方式在除了工作表("整合查詢")以外的其他所有工作表,找出所有關鍵字,並將有關鍵字那一列其中幾個欄位的資料填入到工作表("整合查詢")(如圖),該怎麼做呢?
自己寫了一部份,但是執行不正常,不知如何修改(在工作表("整合查詢")的D3輸入關鍵字查詢)。
PS:同時希望能在工作表("整合查詢")的B欄顯示該筆資料所在工作表的名稱。
[attach]30134[/attach]
[attach]30135[/attach]
作者: 准提部林    時間: 2019-2-26 11:32

Sub 查詢()
Dim Arr, Brr, T$, Sht As Worksheet, i&, j%, Mr, N&
T = [D3]: If T = "" Then MsgBox "未輸入查詢字串!! ": Exit Sub
[B7:M3000].ClearContents
Mr = Array(1, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13)
ReDim Brr(1 To 30000, 1 To 12)
For Each Sht In Sheets
    If Sht.Name = "整合查詢" Then GoTo 101
    Arr = Sht.UsedRange
    For i = 2 To UBound(Arr)
        If InStr(Arr(i, 4), T) Then
           N = N + 1: Brr(N, 1) = Sht.Name
           For j = 1 To 11: Brr(N, j + 1) = Arr(i, Mr(j - 1)): Next
        End If
    Next i
101: Next
If N > 0 Then [B7:M7].Resize(N) = Brr
End Sub
作者: jesscc    時間: 2019-2-26 20:54

謝謝准大的幫忙




歡迎光臨 麻辣家族討論版版 (http://forum.twbts.com/)