【VBA】複数セルに数式を一括で入れる方法

今回はVBAで複数セルに数式を一括で入力する方法を紹介します。

Excel上と同じように、数式の参照先が移動していくのでとても便利です。

Formulaプロパティで複数セルに数式を入れる

Formulaプロパティ
Formulaプロパティ

例えば、図のようなExcelシートで、A列を参照する数式をB列に入れたいとします。

Sub InputFormulas1()
    'Range("B1:B3")に数式を打ち込む
    Range("B1:B3").Formula = "=A1"
End Sub

その場合、このプログラムを実行すれば一気に数式を入力することができます。

Formulaプロパティ
Formulaプロパティ

プログラム上の数式は"=A1″ですが、自動的に行番号が変わり、A1~A3のセルを参照しています。

このように参照先が変わる場合でも1行のプログラムで済むのでとても便利です。

参照先を固定したいなら$マークを付ける

Sub InputFormulas2()
    'Range("B1:B3")に数式を打ち込む
    Range("B1:B3").Formula = "=A$1"
End Sub
$マーク
$マーク

反対に参照先を固定したい場合は、$マークを付けてあげます。

行/列番号が変わらなくなるため、参照先を固定したい時は数式に$マークを付けてあげてください。

《VBA中級者向けの本》
VBA上級者を目指したい人にはパーフェクトExcel VBA一択です。

created by Rinker
技術評論社
¥3,608 (2022/05/20 10:38:41時点 Amazon調べ-詳細)

自分で作るのが難しいと感じたら、プロに作ってもらう手もあります。
こちらの記事でおすすめのプログラマーを紹介しています

《IT未経験-特化型サービス》



他の「VBA」の記事はこちらからどうぞ

VBA

Posted by やろまい