• ベストアンサー

エクセル関数

データベースを作っていて、抽出した数値を合計する関数を入力しています。SUMIFを使っているんですが、SUMIFだと検索条件が1つしか選べません、複数の検索条件で抽出した数値を合計するにはどうすればいいでしょうか??できればフィルタは使わない方法でおねがいします。

質問者が選んだベストアンサー

  • ベストアンサー
  • mshr1962
  • ベストアンサー率39% (7417/18945)
回答No.1

=SUMPRODUCT((条件1)*(条件2)*....(集計する数値)) 例 D列がAで且つE列がBのF列の合計 =SUMPRODUCT(($D$1:$D$100="A")*($E$1:$E$100="B")*($F$1:$F$100)) D列が10以上20未満のF列の合計 =SUMPRODUCT(($D$1:$D$100>=10)*($D$1:$D$100<20)*($F$1:$F$100)) D列の日付が1月で、E列の1文字目がBのF列の合計 =SUMPRODUCT((MONTH($D$1:$D$100)=1)*(LEFT($E$1:$E$100,1)="B")*($F$1:$F$100)) 他に配列数式を使う方法やDSUM関数を使う方法があります。

momoten105jp
質問者

補足

そんなに応用できるんですかぁ!!ありがとうございます!!

その他の回答 (3)

  • 134
  • ベストアンサー率27% (162/600)
回答No.4

具体的にどういう関数をお望みなのか、わかりません 配列関数というものが、回答の中にありますが… =sum(if((条件1)*(条件2),合計する範囲,"")) と入力して、CtrlとShiftを押しながら、Enterを押すことで入力できる関数です。 例えば、 =sum(if(($a$2:$a$100<50)*($b$2:$b$100),$c$2:$c$100,"")) と入力して、Ctrl+Shift にて、Enter…など 条件不明なので、どう入力したらいいかまで お答えできませんけど。

momoten105jp
質問者

お礼

説明不足でした、改めて質問しようとおもいます。 =sum(if((条件1)*(条件2),合計する範囲,""))は役に立ちそうです^^ ありがとうございました^^

noname#204879
noname#204879
回答No.3

「SUMIFだと検索条件が1つしか選べません」からと言って、必ずしも「複数の検索条件で抽出した数値を合計する」ことが出来ないとは言えません。 “押しても駄目なら引いてみよ”で、具体例を示せば望外の名案が得られるかもよ。勝手に決め付けない方がよろしいかと。

momoten105jp
質問者

補足

確かに決め付けるのはよくないですね^^; あまりエクセルが得意じゃないのですいません;;

  • akio_myau
  • ベストアンサー率34% (515/1480)
回答No.2

SUMPRODUCT関数を利用したらいかがでしょうか。 使い方の例は下記のページを参照してみてください。

参考URL:
http://www.excel-jiten.net/apply_funcs_001/sum_by_and_condition.html
momoten105jp
質問者

補足

とてもわかり易く説明してありました^^ありがとうございます。 データ入力の前にSUMPURODUCTを入れておくとエラーになってしまうんですね、SUMIFの時はなかったのですが・・・何か解決方があったらおねがいします。

関連するQ&A

専門家に質問してみよう