Excel で縦一列の数字をすべて足して 7 で割る必要があります。次に、結果を 7 つの等しい行 (各曜日ごとに 1 つ) に転置する必要があります。
Excel で次の =TRANSPOSE("=SUM(D1:D4)/7") を試しましたが、後で、数字が 7 ではなく 1 つのセルに転置されるだけであり、それでも機能しないことに気付きました。
たとえば、次の操作を実行したいのですが、この例では 7 行ではなく 4 行を使用します。ただし、7 行を除いて同じことが適用されます。
6
5
4
3
18 (=SUM(D1:D4))
すると =SUM(D1:D4)/5 となり、3.6 になります。
この結果を4つの水平行に転置して、次のようになるようにします。
3.6 3.6 3.6 3.6
次の関数 =TRANSPOSE("=SUM(D1:D4)/7") が使えると思いました
しかし、結果のフィールドには=SUM(D1:D4)/5しか表示されず、最初の水平フィールドにのみ表示されます。4つすべてではありません。
これを転置する方法について何かアイデアはありますか? また、その関数はどのように記述されますか?
前もって感謝します。
****編集 これをここにもコメントの 1 つにも入れて、見られるようにします。皆さん、ありがとうございます。回答は私にとって非常に役に立ちましたが、仕様はその後変更されました。また、コスト コードと説明を水平方向に相関させ、各水平セルに日付を割り当てることも求められています。これには、かなり長いマクロを記述する必要があるでしょう。私はこれについてまったく経験がなく、現状では基本的な機能に苦労しています。新しいシステムに転送するタイムシートは 8 週間分しかないため、会社の休暇年が終了する 12 月までは古いデータベースを参照する方が簡単だと彼らは考えています。回答ありがとうございます**
答え1
これを行うには、関数を使用する必要はなくTRANSPOSE
、 を使用するだけですarray formula
。
以下のものをお持ちであると仮定します。
ColA
6
5
4
3
セルをハイライト表示しA5:G5
( をA5
アクティブ セルにして)、数式を入力して=sum(A1:A4)/5
を押すとctrl+shft+enter
、次の結果が生成されます。
ColA ColB ColC ColD ColE ColF ColG
6
5
4
3
3.6 3.6 3.6 3.6 3.6 3.6 3.6
セル内のいずれかの値を変更すると、A1:A4
すべての数式の合計が更新されます。
答え2
最も簡単な方法は、最初のセルにこの数式を使用することです。
=SUM($D1:$D4)/7
さらに6つのセルにコピーします
単一の関数が必要な場合はこれで十分です
=SUM($D1:$D4)/{7,7,7,7,7,7,7}
7セルの水平範囲に「配列が入力されました」