Board logo

標題: 請問如何變更( )內的數值,做指定的篩選。謝謝 [打印本頁]

作者: jonn0510    時間: 2014-7-23 06:07     標題: 請問如何變更( )內的數值,做指定的篩選。謝謝

請教老師:
這是用VBA自動篩選K3~K21小於0的值,篩選後將篩選結果拷貝到R3的程序。

Sub nn()
With Range("I2:O21")
.AutoFilter 3, "<0"
Range("I3:O21").SpecialCells(xlCellTypeVisible).Copy [R3]
.AutoFilter
End With
End Sub

若想改成希望用VBA自動篩選K3~K21等於 (2) 的值,篩選後將篩選結果拷貝到R3,該如何修改?另(2)的數值乃指定值,可能改為(-3)也可改成(4)等等,希望能變更()內的數值,做指定的篩選。謝謝
作者: jonn0510    時間: 2014-7-24 22:03

回復 1# jonn0510

Sub nn()
With Range("I2:O21")
.AutoFilter Field:=3, Criteria1:="02"
Range("I3:O21").SpecialCells(xlCellTypeVisible).Copy [R3]
.AutoFilter
End With
End Sub
作者: Hsieh    時間: 2014-7-25 10:09

回復 2# jonn0510
看你的變數要如何設置?
用輸入對話方塊傳回變數
  1. Sub ex()
  2. Dim k%, f$
  3. k = InputBox("輸入篩選欄位", , 3)
  4. f = InputBox("輸入篩選準則", , "02")
  5. With Range("I2:O21")
  6.   .AutoFilter k, f
  7.   .Offset(1).SpecialCells(xlCellTypeVisible).Copy [R3]
  8.   .AutoFilter
  9. End With
  10. End Sub
複製代碼

作者: jonn0510    時間: 2014-8-10 06:21

回復 3# Hsieh
感謝版主老師:
原來還有這種用法,真的是長知識了,謝謝您。




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