マッチングに便利なVlookUp関数・match関数Index関数ですが、
マクロで表現するにはどうすればいいでしょうか
初歩的なプログラミングの要素が必要となりますが、
コツを掴めば初歩の壁を越えられるかと思います♪
下記の画像のようにB列とC列に金額と消費税を反映させるマクロを例にします
セルB9 C9 にはSUM関数が入っています
サンプルコードは下記です
処理の流れ
①ループ1のtoValueに入る
toValueの値⇒2 A列2行目を取得 セルの中身2
②ループ2のmListに入る
toValueの値⇒2 A列2行目を取得 セルの中身2 ココの値は変わらない
mListの値⇒2 F列の2行目を取得 セルの中身1
IF文で toValueの値 [range(“A” & toValue)] と mListの値[range(“F” & toValue)] を比較
初回はマッチせず
ループ2の2回目のループ
toValueの値⇒2 A列2行目を取得 セルの中身2 ココの値は変わらない
mListの値⇒2 F列の2行目を取得 セルの中身2
マッチしました!
③B列とC列に吐き出す
2行目に吐き出したいのでVtoの値は2
Range(“B” & Vto).Value = Range(“H” & mList).Value
Range(“C” & Vto).Value = Range(“B” & Vto).Value * 0.08
Vto = Vto + 1 ‘次回出力先は3行目なので+1を自己代入する
【ループ2を抜ける】 Exit For
↓
①ループ1の2回目のループに入る
toValueの値⇒3 A列3行目を取得 セルの中身5
②ループ2の2回目のループに入る
2~8回ループする
マッチングする
③出力する
出力変数を+1自己代入する
①②③を繰り返す……..
全てのループが終了されるという流れです
以上です。
細かいこと省いてざっくりですが、
自分の説明力と書面だとこれが限界ですww
プログラミングはとにかく書くこと
なので手を動かして失敗しまくって体で覚えればすんなり頭に入ることも多々あります
プログラミングライフを楽しみましょう♪
ではでは♪
コメント