マクロ(VBA)の書き方を教えてください。

画像

Visual Basic | Excel93閲覧xmlns="http://www.w3.org/2000/svg">50

ベストアンサー

1
画像

1人がナイス!しています

ThanksImg質問者からのお礼コメント

有難う御座います。 大変参考になり、またシンプルで理解しやすかったです。 添付資料まで作成して頂き有難う御座います。

お礼日時:7/3 23:04

その他の回答(1件)

2

以下のようなものでしょうか? ・「Private Sub CommandButton1_Click()」はACTIVEXのボタンの場合です。実施環境にあわせてください。 ・ロット番号を定義したシート名が不明なので、「転記元」としています。 With Sheets("転記元") の「転記元」をシート名に変更してください。「ロット表」の場合は、 With Sheets("ロット表") です。 Private Sub CommandButton1_Click() Dim LotTable As Variant, iLotCount As Long Dim ii As Long, jj As Long ''「ロット情報」を取得する。 With Sheets("転記元") LotTable = .Range("B3", .Cells(.Rows.CountLarge, "B").End(xlUp)).Resize(, 3) End With iLotCount = UBound(LotTable, 1) ''「品名」をキーに「ロット番号」と「単価」を設定する。 Application.ScreenUpdating = False For ii = 3 To Cells(Rows.CountLarge, "B").End(xlUp).Row Step 2 For jj = 1 To iLotCount If Cells(ii, "B").Value = LotTable(jj, 1) Then Cells(ii, "C").Value = LotTable(jj, 2) Cells(ii + 1, "C").Value = LotTable(jj, 3) Exit For End If Next jj Next ii Application.ScreenUpdating = True End Sub ※余計な一言 <m(__)m> 式でいいような気がしますが。データが多いのですかね?

2人がナイス!しています