質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.37%
Google スプレッドシート

Google スプレッドシートは、フリーで利用できる表計算ソフト。Webアプリのためインターネットに接続することで利用できます。チャートやグラフの作成のほか、シートを他のユーザーと共有したり、同時に作業を進めることも可能です。

Q&A

解決済

1回答

166閲覧

Googleスプレッドシートでスピルを用いた行ごとの達成率の計算

Oni_hiro

総合スコア4

Google スプレッドシート

Google スプレッドシートは、フリーで利用できる表計算ソフト。Webアプリのためインターネットに接続することで利用できます。チャートやグラフの作成のほか、シートを他のユーザーと共有したり、同時に作業を進めることも可能です。

0グッド

0クリップ

投稿2024/10/30 11:56

編集2024/11/05 07:02

実現したいこと

Googleスプレッドシートでスピルを用いた行ごとの達成率の計算

  

前提

イメージ説明

画像のように、列方向に日付、行方向には社員別のとある集計結果があります。

当初、E列には下記のような計算式を入れて行別の達成率を算出していました。

=IF(D3="", "", COUNTIF(G3:AN3, 1) / COUNTA(G3:AN3))

これをE3セㇽにのみ計算式を入れて一括で計算できないかと、

=ARRAYFORMULA(IF(D3:D="", "", COUNTIF(G3:AN, 1) / IF(COUNTA(G3:AN), COUNTA(G3:AN), 1)))

このように入力すると、すべて「14%」となり、各行で集計をしたいという意図とはズレてしまいました。

どうにか、スピルで行ごとに個別の計算結果を表示させられないでしょうか?

▼追記 2024-11-5 ※参考(解決した関数)

plaintext

1={ 2 "達成率"; 3 ARRAY_CONSTRAIN( 4 BYROW( 5 INDIRECT( 6 "D2:" & 7 LEFT( 8 ADDRESS(1, COUNTA(D2:2) + COLUMN(D1) - 1, 4), 9 2 10 ) 11 ), 12 LAMBDA(_r, 13 IF( 14 COUNTA(_r) > 0, 15 SUMIF(_r, 1) / COUNTA(_r), 16 0 17 ) 18 ) 19 ), 20 COUNTA(A2:A), 21 1 22 ) 23} 24

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答1

0

ベストアンサー

COUNTIF等は元々範囲を引数にとるので、ARRAYFORMULAと相性が良くないです。
(COUNTIFの第二引数である集計対象を配列式にすればARRAYFORMULAで扱えますが、今回の問題解決にはつながりそうにないです)

こちらの記事が参考になると思います。
https://qiita.com/Shinoda_Naoki/items/9d0de6583e53720c4c4f
今回の件では BYROWG3:AN3 を範囲として指定し、LAMBDAに渡されたrowを対象としてCOUNTIF,COUNTAすれば良さそうです。

投稿2024/10/31 08:50

pecmm

総合スコア647

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

Oni_hiro

2024/11/01 05:52 編集

>pecmm様 コメントありがとうございます! 教えていただいた記事を元に少し工夫してみます。 正式なご回答は内容が理解できてからさせてください。
Oni_hiro

2024/11/05 06:59 編集

>pecmm様 ありがとうございました。参考にさせていただき希望通りの機能が実装できました。 ={ "達成率"; ARRAY_CONSTRAIN( BYROW( INDIRECT( "D2:" & LEFT( ADDRESS(1, COUNTA(D2:2) + COLUMN(D1) - 1, 4), 2 ) ), LAMBDA(_r, IF( COUNTA(_r) > 0, SUMIF(_r, 1) / COUNTA(_r), 0 ) ) ), COUNTA(A2:A), 1 ) }
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.37%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問