返回列表 上一主題 發帖

依條件搜尋篩選資料集中於1個檔案

依條件搜尋篩選資料集中於1個檔案

同1個資料夾裡有20個csv檔案
想在檔案"集中00"的工作表"順序"中的B2儲存格輸入所要篩選的數值或文字
篩選各csv檔的A欄
當符合之資料整列依照蒐尋順序複製至檔案"集中00"的工作表"集中"中(第1欄顯示檔名,如圖01)
當搜尋資料符合者不只1列則每1個都複製(第1欄顯示檔名,如圖01)
當搜尋資料沒有符合者就只顯示檔名(第1欄顯示檔名,如圖01)
圖01.jpg

資料.rar (961.26 KB)

回復 1# oak0723-1

不好意思,看不太懂需求,請再補充說明一下,謝謝

TOP

回復 1# oak0723-1
集中00的B欄順序和C檔名是人工填寫,有可能20個,有可能17...(有可能不按順 序,跳號),依據那些資訊去查詢需要的數字,對嗎?有找到符核則複制整列資料,對嗎?

TOP

集中00的B欄順序和C檔名是人工填寫,有可能20個,有可能17...(有可能不按順 序,跳號),依據那些資訊去查詢需要的數字,對嗎?有找到符核則複制整列資料,對嗎?--是的

TOP

回復 3# samwang


    集中00的B欄順序和C檔名是人工填寫,有可能20個,有可能17...(有可能不按順 序,跳號),依據那些資訊去查詢需要的數字,對嗎?有找到符核則複制整列資料,對嗎?依據檔案"集中00"的"順序"工作表的B2儲存格裡的資料去搜尋
圖02.jpg

TOP

本帖最後由 oak0723-1 於 2022-7-3 21:44 編輯

回復 2# samwang


同1個檔案夾裡有20個檔案,依據所輸入的數值為條件來篩選,將符合的就整列複製集中到檔案"集中00"的工作表"集中"(但第1個欄位要顯示檔名)
1>在檔案"集中00"的"順序"B2儲存格輸入數值,就以此數值與順序去搜尋20個檔案的A欄位,符合者就整列複製到工作表"集中"(但第1個欄位要顯示檔名)
2>當同1檔案搜尋到符合有幾列,就就複製幾列,(但第1個欄位要顯示檔名)
3>當檔案搜尋不到符合,只第1個欄位顯示檔名,第2欄位就顯示0
圖01.jpg

TOP

回復 6# oak0723-1

請測試看看,謝謝
Sub test()
Dim Arr, Crr, T, Brr(1 To 10000, 1 To 200), ph$, fn$, n&, C%, x%, j%
Application.ScreenUpdating = False
ph = ThisWorkbook.Path & "\"
With Sheets(1)
    T = .[b2]
    Arr = .Range(.[b4], .[b65536].End(3))
    For x = 1 To UBound(Arr)
        fn = Format(Arr(x, 1), "00"): Arr(x, 1) = fn
        With Workbooks.Open(ph & fn & ".csv")
            Crr = Range("A1").CurrentRegion
            .Close
        End With
        For i = 1 To UBound(Crr)
            If Crr(i, 1) = T Then
                n = n + 1: Brr(n, 1) = fn
                For j = 1 To UBound(Crr, 2): Brr(n, j + 1) = Crr(i, j): Next
                If UBound(Crr, 2) + 1 > C Then C = UBound(Crr, 2) + 1
            End If
        Next
    Next
    .Range("c4:c" & UBound(Arr)).NumberFormatLocal = "@"
    .[c4].Resize(UBound(Arr), 1) = Arr
End With
With Sheets(2)
    .Range("a2").CurrentRegion.Offset(1) = ""
    .Range("a3:a" & n).NumberFormatLocal = "@"
    .[a3].Resize(n, C) = Brr
End With
Application.ScreenUpdating = True
End Sub

TOP

回復 7# samwang


    感恩感恩
謝謝

TOP

        靜思自在 : 每天無所事事,是人生的消費者,積極、有用才是人生的創造者。
返回列表 上一主題