teratail header banner
teratail header banner
質問するログイン新規登録

質問編集履歴

1

数式のミスと補足情報追加。

2016/11/19 02:12

投稿

stcamp
stcamp

スコア13

title CHANGED
File without changes
body CHANGED
@@ -12,9 +12,12 @@
12
12
  その為、処理パフォーマンスの向上を考慮し、E2にARRAYFORMULAを使った以下の数式を入力してみましたが、C列がMの行が上手く集計されずに困っています。
13
13
 
14
14
  ```ここに言語を入力
15
- ARRAYFORMULA(IF($C$2:$C="R",SUMIF(LOG!$A$2:$A,INDIRECT("$A"&ROW()&":$A"),LOG!$B$2:$B)*INDIRECT("$D"&ROW()&":$D"),IF($C2:$C="M",SUMIFS($D$2:$D,$A$2:$A,INDIRECT("$A"&ROW()&":$A"),$C$2:$C,"R"),0)))
15
+ ARRAYFORMULA(IF($C$2:$C="R",SUMIF(LOG!$A$2:$A,INDIRECT("$A"&ROW()&":$A"),LOG!$B$2:$B)*INDIRECT("$D"&ROW()&":$D"),IF($C2:$C="M",SUMIFS($E$2:$E,$A$2:$A,INDIRECT("$A"&ROW()&":$A"),$C$2:$C,"R"),0)))
16
16
  ```
17
17
 
18
+ [修正] SUMIFSの合計範囲の指定が間違っていましたので「$D$2:$D」から「$E$2:$E」へ修正しました。
19
+ ただし、この場合、循環参照エラーとなります。(本環境では合計範囲その他のミスはなく、エラーもございません)
20
+
18
21
  ![イメージ説明](b245b52e4ac2f64b1861b3d0b74aafd2.png)
19
22
 
20
23
  ![イメージ説明](7b937a844aa976f0e0f63ca63980d06c.png)
@@ -25,9 +28,12 @@
25
28
  0. SUMシート上のC列(role)が「M」の場合、SUMシートからA列(title)が同一及びC列(role)が「R」の値(point)の合計値を取得する。
26
29
 
27
30
 
28
- ARRAYFORMULAを使用しなくても、結果としてE2への数式入力のみで望む結果が得られるなら問題ございません。
31
+ ARRAYFORMULAを使用しなくても、結果として**E2への数式入力のみ**で望む結果が得られるなら問題ございません。
29
32
  エクセルやスプレッドシートの関数に詳しい方、お知恵をいただければと思います。
30
33
  うまい解決方法がない場合には、GASにてカスタム関数を作成しようかと思っています。
31
34
  よろしくお願いいたします。
32
35
 
36
+ [修正]補足漏れでした。
37
+ 別途列追加や別シートへ計算用のデータ展開する等の解決策ではなく、あくまでも**E2への数式入力のみ**となります。
38
+
33
39
  ※スプレッドシートのタグが見当たらなかったため、EXCELとしていますが、環境はGoogle Spread Sheetです。