Excel (一般機能)

Excelの一般機能に関するフォーラムです。
  • 解決済みのトピックにはコメントできません。
このトピックは解決済みです。
質問

 
(Windows 7 Professional : Excel 2013)
SUMIFSのOR検索でセル参照を使用したい
投稿日時: 18/07/07 14:33:17
投稿者: tenkafubu0805

お世話になります。
 
件名の「SUMIFSのOR検索でセル参照を使用したい」が知りたいです。
 
具体的には、下記のことを想定しています。
 
A列  B列 C列
A B {"A","B"} 合計金額
D   {"D"}   合計金額
B   {"B"}   合計金額
C D {"C","D"}  合計金額
A   {"A"}   合計金額
 
A列:ユーザーに入力させます。
B列:関数にて表示させます。
C列:=SUM(SUMIFS(集計!$D:$D,集計!$A:$A,B1))
 
C列にA1ではなく直接B列の文字列を入力すれば計算されます。
セル参照で「B1」を入れると計算されず「0」になっていしまします。
 
そもそもセル参照ができないのでしょうか。
お教えください。
 
皆様、よろしくお願いいたします。

回答
投稿日時: 18/07/07 15:03:29
投稿者: んなっと

●集計
 
  A B C  D
1 A     1
2 D     2
3 B     4
4 C     8
5 A    16
 
●Sheet1
 
  A B  C
1 A B 21
2 D   2
3 B   4
4 C D 10
5 A   17
 
数式の中に直接{"A","B"}と書かないと配列定数とみなされないのだと思います。
AとBを別々のセルに入れて、それらの複数セルを条件に指定するのはどうでしょうか。
 
C1
=SUMPRODUCT(SUMIF(集計!A:A,A1:B1,集計!D:D))
下方向・↓

回答
投稿日時: 18/07/07 15:39:38
投稿者: んなっと

条件の個数が2個より多くなるときは、右に列を増やしていきましょう。
 
ただし、こんなのもあります。実際には使い物になりませんが。
 
●集計
 
   A B C  D
1  A     1
2  D     2
3  B     4
4  C     8
5  A    16
6  XX    32
7 ZZZ    64
 
●Sheet1
 
複数条件を半角スペースで区切ってA列に
 
      A B  C
1 A B XX ZZZ   117
2      D    2
3      B    4
4     C D   10
5      A   17
6    D XX   34
7  C XX ZZZ   104
 
C1
=SUMPRODUCT(SUMIF(集計!A:A,TRIM(MID(SUBSTITUTE(A1," ",REPT(" ",100)),1+100*(ROW(INDIRECT("1:"&(1+LEN(A1)-LEN(SUBSTITUTE(A1," ",)))))-1),100)),集計!D:D))
下方向・↓

投稿日時: 18/07/07 17:23:22
投稿者: tenkafubu0805

んなっと様
 
ご回答をありがとうございます。
 
>の中に直接{"A","B"}と書かないと配列定数とみなされないのだと思います。
そうなんですね。
諦めます。
 
今回は質問ということで条件を1つOR文を2個で質問しましたが、
実際の業務は、条件が5つでOR文がMAX30個ぐらいまでいくと想定しています。
ユーザー負担軽減のため関数のみで対応を考えていましたが、VBAで検討してみます。
 
ありがとうございました。