-1
因此,我試圖編寫一個可以過濾一組數據的VBA代碼。假設我有excel中的數據,通過列A
到G
,我希望我的過濾器在列C
中執行操作。現在列C
包含像6
獨特的值。我想知道如何通過C
中的值逐個篩選數據。基於索引的某種循環和選擇是我想要的。如何使用vba通過逐個使用過濾值來過濾一組數據
因此,我試圖編寫一個可以過濾一組數據的VBA代碼。假設我有excel中的數據,通過列A
到G
,我希望我的過濾器在列C
中執行操作。現在列C
包含像6
獨特的值。我想知道如何通過C
中的值逐個篩選數據。基於索引的某種循環和選擇是我想要的。如何使用vba通過逐個使用過濾值來過濾一組數據
Sub GetUniqueAndCount()
Dim d As Object, c As Range, k, tmp As String
dim LastRow as long
LastRow = Worksheets("sheet1").Range("C" & Rows.Count).End(xlUp).Row
Set d = CreateObject("scripting.dictionary")
set rng = Worksheets("sheet1").Range("C2:C" & LastRow)
For Each c In rng
tmp = Trim(c.Value)
If Len(tmp) > 0 Then d(tmp) = d(tmp) + 1
Next c
For Each k In d.keys
'Write filter code here d(k)
'Criteria1:= d(k)
Next k
End Sub
如果你想使用具有唯一值的字典,然後嘗試這樣
請檢查該https://stackoverflow.com/a/17221895/7889129 – Maddy
所有可用的自動篩選標準之一[循環的可能的複製在vba](https://stackoverflow.com/questions/17220736/looping-through-all-available-autofilter-criteria-one-at-a-time-in-vba) – YowE3K
@MaddyNikam我經歷了答案在鏈接中,最後的答案似乎是一種接近我所看到的方式,但我希望可以做出一個更簡單的解決方案。感謝您的努力 –