Excel VBA質問箱 IV

当質問箱は、有志のボランティア精神のおかげで成り立っています。
問題が解決したら、必ずお礼をしましょうね。
本サイトの基本方針をまとめました。こちら をご一読ください。

投稿種別の選択が必要です。ご注意ください。
迷惑投稿防止のため、URLの入力を制限しています。ご了承ください。


18717 / 76732 ←次へ | 前へ→

【63453】Re:見よう見まねでScripting.Dictionaryを利用したのですが
発言  ichinose  - 09/11/5(木) 19:43 -

引用なし
パスワード
   ▼初心者です。 さん:
こんばんは。
何らかの元データを集計する・・、情報処理ですよね?

この場合、入力データがあって、これを処理するVBAコードがあって、
本来望んでいる出力結果があるはずなんです。

その内の処理するコードしか投稿されていません。

本来は、入力データとして、




このようなデータがある時、

以下のコードを実行させました。
以下のような結果になることを想定しているのですが、





全く別シートに表示されません。

という記述が必要です。


これを記述しててください。


>
>対象データを範囲指定を利用して処理する最後の行数を取得
>しているのですがうまくいきません。
>
>どなたか教えて下さい。
>御願いします。
>
>KEYにしているのは名前です。(文字列)
>加算するのは、金額です。
>
>  Dim i As Long
>  
>  Dim vnt, a
>  Dim dic As Object
>  
>  With Sheets("作業")
>    vnt = .Range("M1", .Range("A65536").End(xlUp)).Value
>  End With
>  
>  Set dic = CreateObject("Scripting.Dictionary")
>  For i = 1 To UBound(vnt, 1)
>    If Not dic.exists(vnt(i, 13)) Then
>      ReDim a(2)
>      a(0) = vnt(i, 13)
>    Else
>      a = dic(vnt(i, 13))
>    End If
>    a(1) = a(1) + vnt(i, 11)
>    dic(vnt(i, 13)) = a
>  Next i
>  
>  '-----結果出力
>  With Sheets("集計")
>    .Cells.ClearContents
>    .Range("A1").Resize(, 2).Value = Array("仕入先名称", "仕入金額")
>    
>    .Range("A2").Resize(dic.Count, 2).Value = Application _
>          .Transpose(Application.Transpose(dic.items))
>    .Select
>  End With
>  '
>  Erase vnt
>  Set dic = Nothing

1 hits

【63450】見よう見まねでScripting.Dictionaryを利用したのですが 初心者です。 09/11/5(木) 18:45 質問
【63452】Re:見よう見まねでScripting.Dictionaryを... kanabun 09/11/5(木) 19:43 発言
【63453】Re:見よう見まねでScripting.Dictionaryを... ichinose 09/11/5(木) 19:43 発言
【63537】Re:見よう見まねでScripting.Dictionaryを... 初心者です。 09/11/16(月) 13:42 お礼
【63454】Re:見よう見まねでScripting.Dictionaryを... kanabun 09/11/5(木) 23:32 発言
【63536】Re:見よう見まねでScripting.Dictionaryを... 初心者です。 09/11/16(月) 13:41 お礼

18717 / 76732 ←次へ | 前へ→
ページ:  ┃  記事番号:
2610219
(SS)C-BOARD v3.8 is Free