投稿/コメントを表示します。

1つめ
Dim LIST As Scripting.Dictionary
Set LIST = CreateObject("Scripting.Dictionary")

このとき、"Scripting.Dictionary"に""がつくのはなぜ?
当然小文字で入力しても大文字にならない

2つめ
テキスト通りに書いたのですが
dic.Item(KEY) = dic.Item(KEY) + 1
で型が一致しません、と出ます。
ここは「すでにキーにあるから、配列を1段下げるよ」という意味ではないのでしょうか。
Sub ディクショナリ()
    Dim dic As Scripting.Dictionary
    Set dic = CreateObject("Scripting.Dictionary")
    
    Dim MR As Long
    Dim i As Long
    Dim KEY As String
    Dim NAM As String
    
    MR = Sheets("基礎データ").Range("A" & Rows.Count).Row
        For i = 2 To MR
            KEY = Sheets("基礎データ").Range("A" & i).Value
            NAM = Sheets("基礎データ").Range("B" & i).Value
            
            If dic.Exists(KEY) Then
                dic.Item(KEY) = dic.Item(KEY) + 1
            Else
                dic.Add (KEY), (NAM)
            End If
        Next
    
    Dim VKEYS As Variant
    VKEYS = dic.Keys
        For i = LBound(VKEYS) To UBound(VKEYS)
            Sheets("出力").Range("A1").Offset(i).Value = VKEYS(i)
            Sheets("出力").Range("B1").Offset(i).Value = VKEYS(i)
        Next
    
End Sub

2019/02/10 08:05