配列で異なる値をセル範囲に入力するマクロ
3行マクロ 34回
配列で異なる値をセル範囲に一度に入力する
配列を利用すると、一度に異なる値をセル範囲に入力することができます。今回は、1行のセル範囲に異なるデータを入力するというケースです。
Array関数による一次元配列を利用してみましょう。
曜日をまとめて入力するとか、支店名などを毎回入力するときに使えるコードです。(サンプルファイルは、こちらから 3行マクロ34回サンプルデータ)
Excelバージョン:
異なる値をセル範囲に入力~Array関数
Array関数の使いかたは、難しくないので、次のコードを実行してみましょう。
文字列と数式は、ダブルクォーテーションで囲んでください。
Sub 異なる値入力() Range("A1:E1").Value = Array(380, "パン", 198, "卵", "=SUM(A1:D1)") End Sub
文字列と数式は、ダブルクォーテーションで囲んでください。
マクロで、曜日を一気に入力したい時は、Array関数を使いこのようなコードで入力できます。
月曜~日曜まで入力する時は、
月曜~日曜まで入力する時は、
Sub 曜日入力2() Range("A2:F2").Value = Array("月", "火", "水", "木", "金", "土", "日") End Subすると、結果は、一気に曜日が入力されます。
支店名をマクロで入力する
支店名なども、一気に入力できます。
数式をまとめて入力
以下の表に数式をまとめて入力するマクロです。
Sub 数式まとめて入力() Range("D2:E6").Value = Array("=AVERAGE(A2:C2)", "=SUM(A2:C2)") End Sub
マクロを実行すると数式がまとめて入力されます。
このケースは、2行以上の範囲に1次元配列を代入したのですが、2行目は同じ数式でも位置に応じて相対参照で変化しています。
今日の講義は以上です。お疲れ様でした。
このケースは、2行以上の範囲に1次元配列を代入したのですが、2行目は同じ数式でも位置に応じて相対参照で変化しています。
今日の講義は以上です。お疲れ様でした。