|
▼kanabun さん:
あどばいすありがとうございます
いろいろ試行錯誤して、dictionaryオブジェクトを利用して、
むりくりプログラムを完成させてみました
ヒントを頂きありがとうございました
>▼かな さん:
>
>>この中で、一番値の多いもの。
>>この場合は 10 になるのですが・・・
>>このように10を取得するのにいい方法といいますか、
>何か適した関数とかあるのでしょうか?
>
>関数では思いつかなかったので、ユーザー定義関数ではいかが?
>
>Function MaxCount(r As Range)
> Dim i As Long, k As Long
> Dim v
> Dim dic As Object
>
> v = r.Value
> Set dic = CreateObject("Scripting.Dictionary")
> For i = 1 To UBound(v)
> dic(v(i, 1)) = dic(v(i, 1)) + 1
> Next
> For Each v In dic.Keys()
> If k < dic(v) Then k = dic(v): MaxCount = v
> Next
> Set dic = Nothing
>End Function
>
>
>どこかのセルに =MaxCount(A1:A12)
|
|