【VBA】セルに計算式を埋め込む方法(Formulaプロパティ)
今回はVBAでセルに計算式を埋め込む方法を紹介します。
セルに計算式を埋め込む方法(Formulaプロパティ)
Sub WriteFormula()
'''A4セルに計算式を埋め込む
Range("A4").Formula = "=SUM(A1:A3)"
End Sub
セルに計算式を埋め込む場合はRangeオブジェクトのFormulaプロパティを使用します。
Range.Formula = “数式の文字列"
とすれば数式を埋め込むことができます。
複数セルに計算式を埋め込む方法
Range("A4:B4").Formula = "=SUM(A1:A3)"
複数セルに計算式を埋め込む場合はRangeオブジェクトで複数のセルを指定します。
詳しくは下記記事を読んでみてください。
計算式にダブルクォーテーションを埋め込む方法
Sub WriteFormulaDoubleQuotation()
'''ダブルクォーテーションを含む計算式を埋め込む
Range("B4").Formula = "=VLOOKUP(""商品A"",A1:B3,2,FALSE)"
End Sub
VLOOKUP関数などを使う時にはExcel関数の中にダブルクォーテーションが含まれることがあります。
VBAの文字列はダブルクォーテーションで囲むため、そのまま書くとエラーとなってしまいます。
計算式にダブルクォーテーションを含む場合はサンプルコードのようにダブルクォーテーションを2つ続けて書きます。
こうするとエスケープ処理がされて文字列を囲む記号ではないと認識されます。
数式内にダブルクォーテーションがあるときはダブルクォーテーションを2つ続けると覚えておきいましょう。
《参考》
計算式ならダブルクォーテーションを2つ続ける方法が見やすいですが、通常はChr(34)を使用するのがベターです。