今回はVBAで数式を入力する方法を考えていきます。
合計と平均の列が未記入の状態となっています。
合計と平均については、通常、セルの値を変数に格納してそれぞれ計算してやれば、
求めること自体は簡単にできます。
ただ、数式を入力するともっと簡単に実装することができますので、
今回は数式を入力する方法について考えていきます。
■ポイント
数式を入力するのは単純です。
そのままRange("A1").value = "=SUM(A2:A3)"といった具体に=を含めた数式を、
valueプロパティにそのまま代入するだけです。
回答を見るとものすごく単純なのが分かります。
■回答
Sub Q17_Answer()
Range("F3:G16").Value = Array("=SUM(C3:E3)", "=AVERAGE(C3:E3)")
End Sub
■解説
今回、合計と平均の未記入の箇所すべてを対象に数式を入力しています。
Array関数は複数の値を入力するときに使います。
これは、F列には第一引数である=SUM(C3:E3)を、G列には第2引数である
=AVERAGE(C3:E3)を代入することを意味しています。
複数の行に渡りセルを指定したとしても、相対参照により、
行が1つずれるにつれて入力する数式の中の列もひとつずれます。
これにより、たった1行で簡単に実装することができました。