2009-08-18 9 views
47

私はMSランタイムスクリプトライブラリのDictionaryクラスを使用して、レポートテンプレート用のラベルの保存場所を保存しています。 Pythonのようなその辞書のすべてのキーバリューペアを繰り返し処理する方法はありますか?私は行番号としてキーを使用したいだけです(すべてがA列にあります)、値はラベルヘッダーになります。VBAディクショナリを反復処理しますか?

のような何か:

For Each key in dict 
    Range("A" & key).Value = dict(key) 
Next key 

答えて

83

試してみてください。

For Each strKey In oDic.Keys() 
    Range("A" & strKey).Value = oDic(strKey) 
Next 
+23

Each'がString's 'では動作しません'のためので、私は、strKeyはVariant'として '宣言する必要があることを追加します。 – stenci