• ベストアンサー

エクセル(2013)の繰り返し処理マクロについて

以下のような処理をマクロで行いたいのですが、どなたかお詳しい方教えて頂けませんでしょうか。 1.[シート(1)]A1を検索値にする 2.[シート(2)]のB3を範囲指定する。 3.一致しない場合→次行を検索 4.一致する場合、C3をコピーし、[シート(2)]のC10に値で貼り付ける。 5.[シート(2)]のB4を範囲指定する。 6.一致しない場合→次行を検索 7.一致する場合、C4をコピーし、[シート(2)]のC11に値で貼り付ける。 以下B列が空白セルになるまで繰り返し お手数ですが、ご教授頂けますようお願い致します。

質問者が選んだベストアンサー

  • ベストアンサー
  • kagakusuki
  • ベストアンサー率51% (2610/5101)
回答No.1

>以下B列が空白セルになるまで繰り返し との事ですが、その条件ですと、B列の途中に空欄のセルが存在していた場合、それよりも下の行にもデータが存在していたとしても、その途中にある空欄の行の所で処理がストップしてしまう事になります。  おそらく質問者様がおやりになりたい事は、空欄になるまでではなく、B列にデータが入力されているセルの中で、最も下にあるセルの所まで繰り返すという事なのではないかと思います。  色々なやり方が考えられますが、以下はその一例です。 Dim c, myRange As Range Dim myValue As Variant Dim n As Long myValue = Sheets("シート(1)").Range("A1").Value Set myRange = Sheets("シート(2)").Range("B3:B" & Range("B" & Rows.Count).End(xlUp).Row) n=0 For Each c In myRange If c.Value = myValue Then Sheets("シート(2)").Range("C10").Offset(n).Value = c.Offset(0,1).Value n=n+1 End If Next c  以上です。

iskzff
質問者

お礼

出来ました!ありがとうございます!

関連するQ&A