
私がやりたいのは
=AVERAGE(col(2)2:col(2):5, col(5)2:col(5):5,, col(9)2:col(9):5)
ご覧のとおり、B2
セルを参照するために を使用する代わりに、 を数字 2 = B のB
架空の に置き換えました。col(2)
これは可能ですか?
役に立つ場合のコンテキスト:
次のようなデータがあります(これは調査の結果です)
A B C D
1 ID Q1 Q2 Q3
2 1 3 1 2
3 2 4 5 4
この場合、Q = 質問、数字は質問に与えられたスコアです。
特定の列に基づいて平均を計算したいです。この場合、列 B と列 D の合計のみを計算します。
を使ってそれを実行する方法はわかっていますaverage
が、数字で列を取得する方法がわかりません。ご覧のとおり、B は質問 1、C は質問 2、D は質問 3 (これは AZ まで続きます) です。
質問を表すために行を追加することも考えました
A B C D
1 1 2 3
2 ID Q1 Q2 Q3
3 1 3 1 2
4 2 4 5 4
そして、おそらく使用するmatch
が、私は迷ってしまったので、ここで試したことを共有する価値はない
答え1
INDEX
特定の列を数値で平均化するには、の配列引数とともにを使用しますcolumns
。
例えば、あなたの例では:
=AVERAGE(INDEX($A2:$D2,1,{2,4}))
列2と列4の平均をとる
列番号がランダムな場合は、私が示すように配列定数にハードコードする必要があります。数学的な関係がある場合は、数式を使用して列番号の配列を生成する方が便利な場合があります。
関連する列のみが返されるためINDEX
、引数として配列を受け取る任意の関数を使用できます。
以前Excel のバージョンによっては異なる数式が必要になる場合があります。この方法が機能しない場合は、何が機能しないのか (またはエラー メッセージ) を投稿してください。