| 
    
     |  | ponpon さん、おはようございます。 ムーン さん、Hirohumiさん、おはようございます。
 
 >Dic.Item(dkey) = Dic.Item(dkey) + r.Offset(, 3).Text
 >この段階で、    ~~~~~~~~~~~~~~~~は、まだ定義されていないので
 >エラーになるような気がするのですが(もちろんエラーにはなりませんが)。
 >Range("A1").Value = Range("A1").Value + 1の様な場合は、
 >初めは、Range("A1").Value がNULL値(?)=0または、""と考えられるのですが・・・
 >Dic.Item(dkey) = Dic.Item(dkey) + r.Offset(, 3).Text
 >の場合は、まだ辞書(Dic)に何も登録していないのに、同じように考えて
 >いいのでしょうか?
 
 私も、この質問箱で、このやり方を勉強させてもらいました。
 このやり方は、一石二鳥というか非常においしい話で、
 
 dkeyがkeyに登録されてなかったら、keyに追加登録し、Itemも登録してくれる
 
 という動きをしているわけです。
 つまり、
 Dic.Add myKey, r.Offset(0, 3).Text
 もやってくれているわけです。
 
 この動きを利用すると、重複しているデータを簡単に集計したり、
 今回のように、同じkeyのデータを簡単にまとめることができます。
 こんな説明でいいでしょうか。
 
 ついでに、この勉強は「とまとさん」の投稿で勉強させてもらいました。
 「とまと」で検索してみてください。
 
 
 |  |