Board logo

標題: [發問] 重複次數之統計 [打印本頁]

作者: cypd    時間: 2023-12-28 01:45     標題: 重複次數之統計

有一表單數據超過上千列
希望將 C 欄數具有重複 2 次以上者
將 C 欄重複及 D 欄相關數據輸入至 G 及 H 欄並統計重複次數
篩選範圍 C2:C1349...
C1350不列入(C 欄數據列數不固定)
是否能將C2:C1349.篩選結果一不同組數據各有不同顏色區別

[attach]37195[/attach]

[attach]37196[/attach]
作者: hcm19522    時間: 2023-12-28 11:53

(輸入編號12199) google網址:https://hcm19522.blogspot.com/
作者: Andy2483    時間: 2023-12-28 11:54

回復 1# cypd


    謝謝論壇,謝謝前輩發表此主題與範例
後學藉此帖練習陣列與字典,學習到篩選後的儲存格範圍帶入陣列中會有資料中斷不全的問題,後學藉此帖學習了.SpecialCells(xlCellTypeVisible)方法,學習方案如下,請前輩參考
執行結果:
[attach]37197[/attach]

Option Explicit
Sub TEST()
Dim xU As Range, Crr, A As Range, Z, T$, T1$, T2$, R&, N&, i&, j%
Set Z = CreateObject("Scripting.Dictionary")
Set xU = Range([C2], [C65536].End(xlUp)).SpecialCells(xlCellTypeVisible)
ReDim Crr(1 To 10000, 1 To 3)
For Each A In xU: Z(Trim(A)) = Z(Trim(A)) + 1: Next
For Each A In xU
   T1 = Trim(A): T2 = Trim(A(1, 2)): T = T1 & "|" & T2
   If Z(T1) = 1 Or T1 = "" Then GoTo i01 Else R = Z(T)
   If R = 0 Then N = N + 1: R = N: Z(T) = R: Crr(R, 1) = "'" & T1: Crr(R, 2) = T2
   Crr(R, 3) = Crr(R, 3) + 1
i01: Next
If N = 0 Then Exit Sub
With Workbooks.Add.Sheets(1)
   .[A1].Resize(1, 3) = [{"關鍵字1","關鍵字2","次數"}]
   .[A2].Resize(N, 3) = Crr
   .Columns(1).EntireColumn.AutoFit
   .Cells.Sort KEY1:=.Cells(1), Order1:=1, Key2:=.Cells(2), Order2:=1, Header:=1
   For i = 2 To .[A65536].End(3).Row
      j = j - (.Cells(i, 1) <> .Cells(i - 1, 1))
      .Cells(i, 1).Interior.ColorIndex = j Mod 15 + 33
   Next
End With
End Sub
作者: cypd    時間: 2023-12-28 14:57

回復 3# Andy2483

非常感謝  Andy2483 熱心回復

關於所產生的結果工作表1
(重複數據不同組別以顏色區隔非常實用...讚喔^^)

PS:結果是否能結合產生在該檔第 2 工作表...
作者: cypd    時間: 2023-12-28 14:59

回復 2# hcm19522

非常感謝 hcm19522 熱心回復
所提供 超過15字元 重複提取 相聚 排序 作為參考  ^^
作者: Andy2483    時間: 2023-12-28 15:26

回復 4# cypd


    謝謝前輩回復
結果放在本檔新工作表的方案,變更如下:
With Workbooks.Add.Sheets(1)     置換為  >>   With Worksheets.Add: .Name = Format(Now, "YY_MM_DD_HH_MM_SS")
作者: cypd    時間: 2023-12-28 15:56

回復 6# Andy2483

感謝  Andy2483 再度回復

讚喔  !!
比對結果非常迅速~水啦




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