返回列表 上一主題 發帖

[發問] ➽篩選G欄>H欄>I欄

[發問] ➽篩選G欄>H欄>I欄

每次都需篩選400筆資料
條件如下:

篩選G欄>H欄>I欄               
篩選完後,將資料儲存在-工作表1

非常感謝大家幫忙,謝謝

附上說明圖片


檔案資料
QQ.rar (80.7 KB)
學習 學習 一直學習

本帖最後由 hcm19522 於 2024-1-25 10:32 編輯

(輸入編號12335) google網址:https://draft.blogger.com/blog/posts/9094075214774179359
google"EXCEL迷"  blog  或google網址:https://hcm19522.blogspot.com/

TOP

回復 1# peter95
Sub test()
Dim Arr, i&, T$, T1$, T2$, k%, Brr(1 To 10000, 1 To 10)
Arr = Range([sheet1!L2], [sheet1!C65536].End(xlUp))
    For i = 2 To UBound(Arr)
        T = Arr(i, 5): T1 = Arr(i, 6): T2 = Arr(i, 7)
        If Arr(i, 5) = "" Then GoTo 100
        If T > T1 And T1 > T2 Then
            k = k + 1
            Brr(k, 1) = Arr(i, 1): Brr(k, 2) = Arr(i, 2)
            Brr(k, 3) = Arr(i, 3): Brr(k, 4) = Arr(i, 4)
            Brr(k, 5) = Arr(i, 5): Brr(k, 6) = Arr(i, 6)
            Brr(k, 7) = Arr(i, 7): Brr(k, 8) = Arr(i, 8)
            Brr(k, 9) = Arr(i, 9): Brr(k, 10) = Arr(i, 10)
        End If
100: Next
[工作表1!A1:J1] = Array("編號", "產品", "類別", "D", "1", "2", "3", "4", "5", "6")
[工作表1!A2].Resize(k, 10) = Brr
End Sub

TOP

回復 1# peter95

Sub ex()
Dim arr, c, x%
With Sheets("Sheet1")
Set c = .Range(.[c2], .[l2])
Set arr = .[c2].CurrentRegion
For x = 2 To arr.Rows.Count
   If arr(x, 7) > arr(x, 8) And arr(x, 8) > arr(x, 9) Then Set c = Union(c, arr(x, 3).Resize(, 10))
Next
End With
c.Copy Sheets("工作表1").[a1]
End Sub

TOP

回復 3# samwang

GHI欄為數值格式
T$ 是文字格式(String), 用來比對大小會有問題, 例如:"10.3" 會被判比 "9.5"小
直接 DIM T, T1, T2 即可

TOP

回復 5# 准提部林

感謝准大指導,謝謝。

TOP

感謝 麻辣家族討論  眾多神人
的熱情幫忙
謝謝大家
有你們真好
學習 學習 一直學習

TOP

回復 4# jcchiang
感謝大大幫忙 經測試 可以使用

若小弟想變為 篩選G欄>H欄>I欄>J欄               
篩選完後,將資料儲存在-工作表1

請問我該如何更改 語法
謝謝大大幫忙
學習 學習 一直學習

TOP

回復 8# peter95


    If arr(x, 7) > arr(x, 8) And arr(x, 8) > arr(x, 9) And arr(x, 9) > arr(x, 10) Then Set c = Union(c, arr(x, 3).Resize(, 10))

TOP

回復 9# jcchiang

感謝大大幫忙 經測試 可以使用

若小弟想變為 篩選G欄<H欄<I欄<J欄               
篩選完後,將資料儲存在-工作表1

請問我該如何更改 語法
謝謝大大幫忙
學習 學習 一直學習

TOP

        靜思自在 : 受人點水之恩,須當湧泉以報。
返回列表 上一主題