私はもっと複雑なコードと辞書を完全に理解していないので、本当に基本的でシンプルなテストシートを作成して、どのように動作するかを把握しました。列a-cの上にある「first」、「do」、「alpha」という3つの項目のみが表示されます(ネストされた辞書を理解することが最終的に目的でした。辞書キーをセルにできないのはなぜですか?
コードはでした:
Sub testing()
Dim dict As New Scripting.Dictionary
dict.Add Key:=Cells(1, 1), Item:=Cells(1, 2)
MsgBox dict(Cells(1, 1))
End Sub
これは動作しませんでした。しかし、変数temp = Cells(1, 1)
を追加して、それが現れたところでCells(1, 1)
の代わりに使用したとき、それは機能しました。
なぜキーはセルではありませんか?誰かが私に
dict.Add Key:=Cells(1, 1), Item:=(1, 2)
と
temp = Cells(1, 1)
dict.Add Key:=temp, Item:=(1, 2)
の違いは何であるか理解するのに役立つことはできますか?項目は、キーではなく、セルにすることができますか?
両方のセルの終わりに '.value'を入れます。(1,1) –
はい、辞書はデータを格納するときに非常に適応します。 'Value'がなければ、範囲オブジェクトを格納します。 – cyboashu
ああ!私はこの機能について聞いていませんでした。だから '.value'は' .value'が付けられているものの中の文字列を返します。 –