Windows版Excel2016文字列をセル参照にしてくれるINDIRECT関数とSUM関数を組み合わせた計算式で、C1セルに入力された行までの合計を計算できることをご紹介しました。同じようなことはOFFSET関数でも可能です。[スポンサードリンク]OFFSETはVBAのRange.OffsetとRange.Resizeが組み合わさったような関数OFFSET関数は、便利ですが難易度もちょっと高い、ワークシート関数です。難易度が高いかというと、二つの機能が混在した関数だからです。VBAの、Range.OffsetプロパティとRange.Resizeプロパティを理解できている方なら、OFFSET関数の二つの機能を理解しやすいはずです。RangeオブジェクトのOffsetプロパティに該当する機能を、OFFSET関数の第2・第3引数が担い、RangeオブジェクトのResizeプロパティに該当する機能を、OFFSET関数の第4・第5引数が担っています。OFFSET関数を使って合計範囲を可変にする数式のサンプルそんなOFFSET関数の、Range.Resizeプロパティ的な機能を使うと、INDIRECT関数で行ったような、SUM関数で合計する範囲を可変にすることができます。1))という数式を入力する上記のような数式を作成すると、A1セルから、C1セルに入力された行までの合計をD1セルに計算できます。C1セルに、「10」を入力したときはA1:A10セルの合計が、「5」を入力したときはA1:A5セルの合計がD1セルに計算されます。OFFSET関数の第4・5引数OFFSET関数の、第4引数と第5引数を使うと、第1引数に指定されたセルを基準にした、行数・列数のセル参照が取得できます。1)という数式は、A1セルを基準にして、第4セルに指定された「10」行・第5セルに指定された「1」列の参照となるので、A1:A10セルへの参照になります。1)という数式は、A1セルを基準にして、第4セルに指定された「5」行・第5セルに指定された「1」列の参照となるので、A1:A5セルへの参照になります。インストラクターのネタ帳Excel(エクセル)よりも、Googleスプレッドシートのほうが、OFFSET関数の第4・第5引数の役割を確認しやすくなっています。インストラクターのネタ帳Range.Offsetはオフセットしたセルを表すRangeを取得するプロパティで、単独では範囲を表すRangeオブジェクトを取得できません。Officeの使い方などを紹介し続け(2012年頃からはVBA関連記事が多め)、毎日5万人の方にご覧いただいています。