|
どんたく さん、おはようございます。
>つまりこのリスト内に何種類の固体があって、それが何回出現しているのか
>求めたい。
>関数でもマクロでもいいんだが、できるだけスマートな方法を知りたい。
>なにか定番みたいなものはあるんでしょうか ???
フィルタ機能のマクロを記録し、ちょっと編集しました。
Sub Macro1()
Dim r1 As Range, r2 As Range, Rmax As Long
'A1は見出し、データはA2:A21まで入っているとして
Set r1 = Range("A1:A21")
'集計先はB1
Set r2 = Cells(1, 2)
r1.AdvancedFilter Action:=xlFilterCopy, CopyToRange:=r2, Unique:=True
'生成したリストの最下行
Rmax = r2.End(xlDown).Row
With r2.Offset(1, 1)
'C2に式を入れる
.Formula = "=COUNTIF(" & r1.Address & "," & .Offset(0, -1).Address(False, True) & ")"
'それを下にフィル
Range(.Offset(0, 0), Cells(Rmax, .Column)).FillDown
End With
'
Set r1 = Nothing: Set r2 = Nothing
End Sub
こんな感じです。
|
|