プロが教える店舗&オフィスのセキュリティ対策術

同じブックのシート2に売り上げリスト、シート1には集計リストがあります。
集計リストのID及び出荷先の様式は固定です。金額、税、計の欄は空白です。
売上リストのデータ(C、D、E列)を集計リストの様式に画像のように移したいです。

今回の売上リストにはID 000199のロシアとID 000314のイタリアはないので
集計リストの金額、税、計の欄をゼロに。
ID 000560のイギリスは売上リストで、はじめからゼロなのでそのまま移す。

以上のような動きを関数でも良いのですが、できればVBAで行いたいです。
お詳しい方、宜しくお願いいたします。

「シート間のデータ移行」の質問画像

A 回答 (1件)

こんばんは



>関数でも良いのですが、できればVBAで行いたいです。
とのことなので、どちらでもで可能なように「関数を利用したVBA」です。

Sub Sample()
Dim rng As Range, n As Long
Const f = "=IFERROR(VLOOKUP($A3,Sheet2!$A$3:$E$@,COLUMN(),0),0)"

With Worksheets("Sheet1")
n = .Cells(Rows.Count, 1).End(xlUp).Row
If n < 3 Then Exit Sub
Set rng = .Range("C3:E3").Resize(n - 2)
End With

n = Application.Max(Worksheets("Sheet2").Cells(Rows.Count, 1).End(xlUp).Row, 3)
rng.FormulaLocal = Replace(f, "@", n)
rng.Value = rng.Value
End Sub
    • good
    • 0
この回答へのお礼

関数を利用したVBA、すごく面白いです!活用させて頂きます。
ありがとうございました!

お礼日時:2022/01/12 07:45

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!