- ベストアンサー
エクセルで複数条件を満たす値を表示する方法
質問初めてで失礼しますが、よろしくお願いします。 エクセルにおいて 下記のようにシート「犬」に基礎となるデータがあります。 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 ・ ・ ・ よろしくお願いします。
- みんなの回答 (4)
- 専門家の回答
質問者が選んだベストアンサー
>内容が、よく理解できず、実際関数を入力したらエラーがでました。 花子、太郎、次郎のデータの列(C2:E99)を選択して「挿入」「名前」「作成」で「上端行」にチェックすてOKしてください。 そうすれば 花子「=犬!$C$2:$C$99」 太郎「=犬!$D$2:$D$99」 次郎「=犬!$E$2:$E$99」 で登録されます。 この状態なら先ほどの式で金額が表示できます。
その他の回答 (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 を 次郎 に書 き替え
お礼
すばらしいですね!!こんなことができるとは!ありがとうございます。
- mshr1962
- ベストアンサー率39% (7417/18945)
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)) でも可能です。
補足
早速ありがとうございます。 ピボットテーブルか関数で処理するのか迷っております。 もし、関数でした処理した場合、ご教授いただきました 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)
この条件なら関数で行うのではなく ピボットテーブルを使ったらどうでしょうか。 行に年を、列に月を、データに花子を選べば 簡単に作成できると思いますが。
お礼
早速ありがとうございました。ピボットテーブルは初めて使ってみました。簡単に作成できそうです。
お礼
すばらしいですね!!こんなことができるとは!ありがとうございます。詳しく教えてくださいましてありがとうございました。