標題:
進階篩選
[打印本頁]
作者:
s7659109
時間:
2016-9-6 11:37
標題:
進階篩選
前輩:
請問進階篩選之巨集,如何改成有迴圈功能(包含篩選準
則,與資料範圍)
Sub 巨集1()
'
' 巨集1 巨集
'
'
Range("G:K").Clear
Range("A1:E2319").AdvancedFilter Action:=xlFilterCopy, CriteriaRange:=Range _
("L1:L8"), CopyToRange:=Range("G16:K16"), Unique:=False
Range("G16").Select
End Sub
作者:
GBKEE
時間:
2016-9-7 13:58
回復
1#
s7659109
是這樣嗎?
Option Explicit
Sub Ex()
With Range("A1:E2319")
.Range("B:B").AdvancedFilter Action:=xlFilterCopy, CopyToRange:=.Range("L1"), Unique:=True
With .Range("L1").CurrentRegion
.Sort KEY1:=.Cells(1), HEADER:=xlYes
End With
For I = 2 To .Range("L1").CurrentRegion.Cells.Count
.AutoFilter FIELD:=2, Criteria1:=.Range("L1").CurrentRegion.Cells(I)
Stop '看看工作表的自動篩選
Next
.AutoFilter
.Range("L1").CurrentRegion = ""
End With
End Sub
複製代碼
作者:
s7659109
時間:
2016-9-8 09:15
版主:
你誤會我的意思了,我已重新將問題修正,篩選:條件1(固定不變)
條件2(要有迴圈,因會有增減),產生如結果
作者:
GBKEE
時間:
2016-9-8 14:08
回復
3#
s7659109
沒有誤會你的意思,是不知你要問什麼!!
是這樣嗎?
Option Explicit
Sub Ex()
Dim Rng As Range, i As Integer
With Sheets("DATA").UsedRange
.Range("B:B").AdvancedFilter Action:=xlFilterCopy, CopyToRange:=Sheets("條件").Range("F2"), Unique:=True
End With
With Sheets("條件").Range("F2:F" & Sheets("條件").Range("F2").End(xlDown).Row)
.Sort KEY1:=.Cells(1), HEADER:=xlYes
For i = 2 To .Cells.Count
Sheets("條件").Range("a3") = .Cells(i)
Sheets("結果").UsedRange.Clear
With Sheets("DATA").UsedRange
.AdvancedFilter Action:=xlFilterCopy, CopyToRange:=Sheets("結果").Range("A1"), CriteriaRange:=Sheets("條件").Range("A2:D3")
End With
Stop '看看工作表結果的內容
Next
End With
End Sub
複製代碼
作者:
s7659109
時間:
2016-9-9 08:44
版主:
首先謝謝版主,
我測試了(程式碼貼上了),還是有問題,只顯示一列,
後面要顯示的資料不見了,我把我想要的顯示的結果放在
應顯示結果工作表中,(測試結果如附檔)
另外結果工作表中date欄的日期格式,要如何
改成2016/01/01
作者:
GBKEE
時間:
2016-9-9 13:47
回復
5#
s7659109
看不懂你要的是什麼,進階篩選無法如此表現.
作者:
s7659109
時間:
2016-9-10 09:21
版主:若用條件式加迴圈可行嗎?
歡迎光臨 麻辣家族討論版版 (http://forum.twbts.com/)