シートにその範囲の数値の範囲がありますが、インデックスで指定された列または行全体を参照するにはどうすればよいですか?
2007を使用しています。HLookup/ Vlookup/Indexを調べましたが成功しませんでした。
別の数式で列/行全体を範囲/配列として参照することを意味していると思いますか?
もしそうなら、私が考えることができる唯一の方法は、OFFSET
を使用することです
=OFFSET($A:$A,,MyColIndex-1)
=OFFSET($1:$1,MyRowIndex-1,)
それは...
=OFFSET(reference,rows,cols,[height],[width])
ただし、Aの左側、または1より上の行に列を挿入した場合、これは機能しません。
編集:ちょうどその小さな問題を回避する方法を見つけました...
=OFFSET($A:$A,,MyColIndex-Column($A:$A))
=OFFSET($1:$1,MyRowIndex-Row($1:$1),)
範囲をテーブルに変換できる場合は、構造化参照を使用してテーブルの列を参照できます。
例
Table1
と呼ばれ、列Column1
、Column2
、Column3
があります。E1
には列の名前があります(例:Column1
)この場合、(たとえば)E1で指定された列の合計を次のように計算できます。
=SUM(INDIRECT("Table1["& E1 &"]"))
次のようなものはどうですか?
=SUM(INDEX(2:1048576,0,2))
これは、指定された範囲の2番目の列全体、つまりB2:B1048576を合計します。これは、インデックス関数の行引数の0が、指定された範囲内の列全体を返すために機能します。以下は、B2:B3だけを合計します。
=SUM(INDEX(2:3,0,2))
...そしてこれはC2:C3を合計します
=SUM(INDEX(B2:F3,0,2))