prefShのB列の値をKeyとして、A列・E列・M列の値をItemに格納し、それぞれ workShのA列・U列・C列に出力したいのですが、その場合はどのように書き換えたらよいか、ご教示いただけませんでしょうか。(prefShでは2行目から最終行まで値を取得し、workShでは3行目から値を入れたいです)
Findメソッドでエラーが起きたので、Dictionaryを初めて使い、現在はA列→A列のみ成功している状態です。↓ お知恵を貸していただけますよう、お願いいたします。
-------------------
Dim myDic As New Dictionary
Dim i As Long
With prefSh
For i = 2 To .Cells(.Rows.Count, 2).End(xlUp).Row
If Not myDic.Exists(.Cells(i, 2).Value) Then
myDic.Add .Cells(i, 2).Value, .Cells(i, 1).Value
End If
Next i
End With
Dim vKey As Variant
With workSh
i = 1
For Each vKey In myDic
i = i + 1
.Cells(i + 1, 2).Value = vKey
.Cells(i + 1, 1).Value = myDic.Item(vKey)
Next
End With
Set myDic = Nothing
No.1ベストアンサー
- 回答日時:
初級者ですのでお手柔らかにお願いします。
Dim myDic As New Dictionary
Dim i As Long
With prefSh
For i = 2 To .Cells(.Rows.Count, 2).End(xlUp).Row
If Not myDic.Exists(.Cells(i, 2).Value) Then
myDic.Add .Cells(i, 2).Value, Array(.Cells(i, "A").Value , .Cells(i, "E").Value , .Cells(i, "M").Value)
End If
Next i
End With
Dim vKey As Variant
With workSh
i = 3
For Each vKey In myDic
.Cells(i, 2).Value = vKey
.Cells(i, "A").Value = myDic(vKey)(0)
.Cells(i, "U").Value = myDic(vKey)(1)
.Cells(i, "C").Value = myDic(vKey)(2)
i = i + 1
Next
End With
Set myDic = Nothing
ご丁寧にありがとうございました。
Dim i As Longの部分から全て使わせていただき、= myDic.Item(vKey)(0)に変更しなくても問題なくプログラムを実行することができました。
大変勉強にもなり、ありがとうございました。
No.2
- 回答日時:
No.1です。
参照設定されてたのですね。
普段しないので見落としました。
もしダメな時は
= myDic.Item(vKey)(0)
などに変更してみて下さい。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Visual Basic(VBA) vba 重複データ合算 5 2023/07/05 18:55
- Visual Basic(VBA) まとめシートから集計シートへA列のコードが一致したら1行コピーするマクロをネット上で見つけました。こ 1 2022/08/30 14:11
- Visual Basic(VBA) 別シートから年齢別の件数をカウントしたいの続き 5 2023/01/24 00:16
- Visual Basic(VBA) vbaを早くしたい 5 2022/09/09 10:58
- Excel(エクセル) VBAの指示の内容 昨日こちらでご教示頂いたのですが初心者な為、一つ一つの指示が何をやっているのかわ 2 2022/10/25 18:08
- Visual Basic(VBA) いつもお世話になっております、VBAで教えて頂きたいのですが 2 2022/05/05 22:20
- Visual Basic(VBA) エラーコード1004 6 2022/06/09 14:12
- Visual Basic(VBA) VBAで教えて頂きたいのですが? 1 2022/04/29 02:36
- Visual Basic(VBA) 前回ご教授いただいたコードに覚えたてのループ処理で品名りんごAから順に20回for nextでループ 7 2023/01/13 22:01
- Visual Basic(VBA) ユーザーフォームに2つのコンボボックス銀行名「ConboBox1」支店名を「ConboBox2」とし 4 2022/08/03 17:34
このQ&Aを見た人はこんなQ&Aも見ています
-
プロが教えるわが家の防犯対策術!
ホームセキュリティのプロが、家庭の防犯対策を真剣に考える 2組のご夫婦へ実際の防犯対策術をご紹介!どうすれば家と家族を守れるのかを教えます!
-
Dictionaryを使い4つの条件の一致で2つの集計列を集計したいのです
Visual Basic(VBA)
-
VBAで保存しないで閉じると空のBookが残る
Excel(エクセル)
-
Application.ScreenUpdating = Falseが効きません
Visual Basic(VBA)
-
-
4
array関数で格納した配列の型を変更する
Visual Basic(VBA)
-
5
連想配列を配列に格納したいです。 vba初心者です。今集計マクロを作成中なのですが、上手くいきません
Microsoft ASP
-
6
重複行を削除して数値を合算したい(合算列が多い)
Excel(エクセル)
-
7
エクセルVBA 配列からセルに「関数式」を一気代入したい
Visual Basic(VBA)
-
8
VBAで重複する項目を1つにまとめて金額を合計したい
Excel(エクセル)
-
9
ExcelVBAで質問です。離れた二次元配列を一つにしたい
Visual Basic(VBA)
-
10
エクセルVBAでオートフィルター最上行を取得するには
Excel(エクセル)
-
11
EXCEL VBA セルに既に入力されている文字に文字を追加する
Excel(エクセル)
-
12
for each の現在の配列ポインタ VBA
Excel(エクセル)
-
13
複数の条件に合う行番号を取得するには
その他(Microsoft Office)
-
14
VBA コレクションに2次元配列を追加して取り出す方法
Visual Basic(VBA)
-
15
VBAで重複データを合算したい
Excel(エクセル)
-
16
Excel 別ブックから該当データを検索、必要データを元ブックへ転記する方法について
Visual Basic(VBA)
-
17
Rangeメソッドは失敗しました。globalオブジェクトについて
Excel(エクセル)
-
18
VBA 別ブックからの転記の高速化について VBA 別ブックからの転記の高速化についてご教授下さい。
Visual Basic(VBA)
-
19
エクセル:マクロ「Application.CutCopyMode = False」って?
Excel(エクセル)
-
20
Excelのセルにユーザー名を表示する方法
Excel(エクセル)
関連するカテゴリからQ&Aを探す
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
首吊りどこ締めるの
-
白血球が多いとどんな心配があ...
-
検便についてです。 便は取れた...
-
彼女のことが好きすぎて彼女の...
-
至急!尿検査前日にオナニーし...
-
EXCELで条件付き書式で空白セル...
-
甲状腺が腫れているが血液検査...
-
勃起する時って痛いんですか? ...
-
尿検査前日に自慰行為した時の...
-
値が入っているときだけ計算結...
-
2つの数値のうち、数値が小さい...
-
小数点以下を繰り上げたものを...
-
MIN関数で空白セルを無視したい...
-
中出しをするとお腹が痛い・・・。
-
EXCELで式からグラフを描くには?
-
【Excelで「正弦波」のグラフを...
-
ある範囲のセルから任意の値を...
-
エクセルのグラフで、値0のとき...
-
リンク先のファイルを開かなく...
-
これって喉仏ですか? 私は女性...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
首吊りどこ締めるの
-
至急!尿検査前日にオナニーし...
-
白血球が多いとどんな心配があ...
-
尿検査前日に自慰行為した時の...
-
検便についてです。 便は取れた...
-
彼女のことが好きすぎて彼女の...
-
腕を見たら黄色くなってる部分...
-
勃起する時って痛いんですか? ...
-
尿検査の前日は自慰控えたほう...
-
精子が黄色?
-
中出しをするとお腹が痛い・・・。
-
EXCELで条件付き書式で空白セル...
-
口の中に黒い血の塊
-
これって喉仏ですか? 私は女性...
-
2つの数値のうち、数値が小さい...
-
納豆食べた後の尿の納豆臭は何故?
-
EXCELで式からグラフを描くには?
-
小数点以下を繰り上げたものを...
-
excelでsin二乗のやり方を教え...
-
エクセル指定した範囲からラン...
おすすめ情報