Board logo

標題: [發問] 請問 要搜尋 三條件 然後在工作表2 全部列出 [打印本頁]

作者: mycmyc    時間: 2012-11-8 22:15     標題: 請問 要搜尋 三條件 然後在工作表2 全部列出

請問 要搜尋 C欄 2210 AND E欄是  五金 AND  F欄大於500  
然後在工作表2 全部列出  列如  3列 符合 則列出 2345列出全部 ABCDEFGH 於工作表2
並往下搜尋至沒資料
謝謝你們
[attach]13080[/attach]
作者: boyao    時間: 2012-11-11 00:39

回復 1# mycmyc


[attach]13092[/attach]

用進階篩選的方式....
作者: mycmyc    時間: 2012-11-11 16:59

用進階篩選的方式....
好像不行
可以說明白一點嗎
謝謝
作者: boyao    時間: 2012-11-12 15:36

回復 3# mycmyc


於sheet1.Range("L1:S1")建立篩選標題
sheet1.Range("L2:S2")建立篩選的條件(幾項都ok)
再執行"進階篩選執行"
如附件..
[attach]13100[/attach]
作者: CA199    時間: 2012-11-12 15:57

矮由寫清楚一點給您看
1.要篩的資料選起來
2.篩選/以儲存格值篩選
3.點您要篩選的欄 ~點C欄文字篩選=2210 點E欄文字篩選-五金 點 F攔 文字篩選>500
就全部給您列出來了~~粉簡單吧~~~
作者: Hsieh    時間: 2012-11-13 15:48

回復 1# mycmyc
你要的結果是這樣吧
[attach]13116[/attach]
執行以下代碼
  1.     Sub ex()
  2. Dim Rng As Range, MyRng As Range, A As Range
  3. With 工作表1
  4. Set MyRng = .[C1]
  5. .Range("C:C").Replace 2120, "=1/0", xlWhole
  6. Set Rng = .Range("C:C").SpecialCells(xlCellTypeFormulas, 16)
  7. Rng.Value = 2120
  8. For Each ar In Rng.Areas
  9.     For Each A In ar
  10.       If A.Offset(, 2) = "五金" And A.Offset(, 4) > 500 Then
  11.       ad = .Range(.[A1], A.Offset(, -2)).Address
  12.       k = Evaluate("Lookup(2,1/(" & ad & "),row(" & ad & "))")
  13.          Set MyRng = Union(MyRng, .Range(.Cells(k, 3), A.End(xlDown)))
  14.          Exit For
  15.       End If
  16.     Next
  17. Next
  18. If Not MyRng Is Nothing Then MyRng.EntireRow.Copy 工作表2.[A1]
  19. End With
  20. End Sub
複製代碼

作者: mycmyc    時間: 2012-11-16 18:39

謝謝大家
我吸收看看
不好意思




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