下記のようなエクセル表があります。 シート2から探して条件に合う、(見出し1,見出し2) が同じなら見出し3-5まで シート1にコピーするマクロがあります。
下記のようなエクセル表があります。 シート2から探して条件に合う、(見出し1,見出し2) が同じなら見出し3-5まで シート1にコピーするマクロがあります。 シート1には都度入力し、シート2から検索してコピーして入力されます。 入力されたら、その行のみ実行したいです。 なぜなら入力されるたびに、実行すると重くてフリーズになったりします。 どなたか、教えてください。 よろしくお願いします。
Visual Basic | Visual Basic・89閲覧
ベストアンサー
添付図の結果でよいのでしようか。 素人の組んだコードなので、貴方のコードの書き方にはコメントできませんが。 日常業務でやられるのであれば、シート1に入力後、フォームコントロールボタンクリックしして実行される方が楽かと思い、 フォームコントロールボタンにコードを組んでみました。 参考まで。 Sub ボタン3_Click() Dim n0 As Long Dim n1 As Long With Worksheets("Sheet2") For n0 = 2 To Cells(Rows.Count, 2).End(xlUp).Row If Cells(n0, 2).Value <> "" And Cells(n0, 6).Value = "" Then For n1 = 2 To .Cells(Rows.Count, 2).End(xlUp).Row If Cells(n0, 2).Value = .Cells(n1, 2).Value _ And Cells(n0, 3).Value = .Cells(n1, 3).Value Then Range(Cells(n0, 6), Cells(n0, 8)).Value _ = Range(.Cells(n1, 6), .Cells(n1, 8)).Value Exit For End If Next End If Next End With End Sub
質問者からのお礼コメント
今気づきました! ありがとうございました。 質問があるんですが、、、 受付終了のようなので、残念です。
お礼日時:5/23 16:15