• ベストアンサー

エクセルで複数条件を満たす値を表示する方法

 質問初めてで失礼しますが、よろしくお願いします。 エクセルにおいて  下記のようにシート「犬」に基礎となるデータがあります。     A   B  C  D  E   ・・・ 1        花子 太郎 次郎 2 1994 6月 200 100 320  3 1994 7月 700 300 500 4 1995 6月 800 500 100 5 1995 9月 900 800 300 6 1996 6月 500 200 200 ・ ・ ・  これを別のシート「猫」に花子の情報のみ一覧表示したいのですが、B3、B4・・・C3、C4・・・にどのような数式をいれればよいでしょうか?  なお、このようにして、太郎や次郎もシート毎に一覧表示させる予定です。    A B C D E   ・・・ 1 花子 2     6月 7月 8月 9月 3 1994  4 1995  5 1996  6 1997  7 1998  ・ ・ ・  よろしくお願いします。  

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

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

>内容が、よく理解できず、実際関数を入力したらエラーがでました。 花子、太郎、次郎のデータの列(C2:E99)を選択して「挿入」「名前」「作成」で「上端行」にチェックすてOKしてください。 そうすれば 花子「=犬!$C$2:$C$99」 太郎「=犬!$D$2:$D$99」 次郎「=犬!$E$2:$E$99」 で登録されます。 この状態なら先ほどの式で金額が表示できます。

tamanegi2000
質問者

お礼

すばらしいですね!!こんなことができるとは!ありがとうございます。詳しく教えてくださいましてありがとうございました。

その他の回答 (3)

noname#204879
noname#204879
回答No.3

1.シート「犬」のセル A1、B1 にそれぞれ 年、月 を入力 2.範囲 A1:E100 を選択 3.[挿入]→[名前]を実行 4.“上端行”だけにチェックを入れて Enterキーをパシーッ 5.シート「猫」のセル B3 に次式を入力して、此れを右横および下方に   ズズーッと複写   =SUMPRODUCT(($A3=年)*(B$2=月)*INDIRECT($A$1)) 6.シート「猫」の見出しをマウスで掴んで Ctrlキーを抑えたままで右隣   にドラッグ&ドロップ 7.シート見出し「猫(2)」を「狸」に上書きして、当該シートのセル A1   を 太郎 に書き替え 8.同様にシート「狐」を作成して、当該シートのセル A1 を 次郎 に書   き替え

tamanegi2000
質問者

お礼

すばらしいですね!!こんなことができるとは!ありがとうございます。

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

1行目を 1 年 月 花子 太郎 次郎 として 「データ」「ピボットテーブル」で「年」を行に、「月」を列に花子をデータにすれば同じ表ができます。 関数にこだわる場合は B3=SUMPRODUCT((犬!$A$2:$A$99=$A3)*(犬!$B$2:$B$99=B$2)*(犬!$C$2:$C$99)) もし、「犬!$C$2:$C$99」を花子という名前で登録した場合は B3=SUMPRODUCT((犬!$A$2:$A$99=$A3)*(犬!$B$2:$B$99=B$2)*(INDIRECT($A$1)) でも可能です。

tamanegi2000
質問者

補足

 早速ありがとうございます。  ピボットテーブルか関数で処理するのか迷っております。  もし、関数でした処理した場合、ご教授いただきました B3=SUMPRODUCT((犬!$A$2:$A$99=$A3)*(犬!$B$2:$B$99=B$2)*(犬!$C$2:$C$99))の「犬!$C$2:$C$99」を入力するにあたり、花子のデータということでC列を自分で選択する必要がありますよね?要するに、例えば、次郎のデータだとここの部分を再度変更する必要がありますよね?この作業をしなくてよいようにする方法は無いのでしょうか?  なお、ご教授いただいた、 「犬!$C$2:$C$99」を花子という名前で登録した場合は B3=SUMPRODUCT((犬!$A$2:$A$99=$A3)*(犬!$B$2:$B$99=B$2)*(INDIRECT($A$1)) の内容が、よく理解できず、実際関数を入力したらエラーがでました。  たびたびすみませんが、よろしくお願いします。

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

この条件なら関数で行うのではなく ピボットテーブルを使ったらどうでしょうか。 行に年を、列に月を、データに花子を選べば 簡単に作成できると思いますが。

tamanegi2000
質問者

お礼

 早速ありがとうございました。ピボットテーブルは初めて使ってみました。簡単に作成できそうです。

関連するQ&A