[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]
『2つの条件を満たした値の合計を参照』(しゅうき)
こちらではいつもお世話になっております。 また皆様のお力を貸してください。
下のような入力用シートがあります。
[sheet福岡] A B C D E F G 3 トヨタ ホンダ 4 日付 名前 用途 新 中 新 中 5 2006/12/10 山田 通勤 10 20 10 20 6 2006/12/10 山田 通勤 10 20 10 20 7 2006/12/18 山田 通勤 10 20 10 20 8 2006/12/18 山田 休日 10 20 10 20 9 2006/12/22 山田 通勤 10 20 30 20 10 2006/12/22 佐藤 休日 10 20 30 20 11 2006/12/22 山田 通勤 10 20 30 20 12 2006/12/22 和田 休日 10 20 30 20
実際のシートは[sheet福岡]だけではなく[sheet長崎]等多数あります。
[sheet車種合計]のセルB3の日付と同じ日を[sheet福岡]A列から探し出し、 さらにその日の用途別の合計が下記[sheet車種合計]のE4:E*のように 集計されるようにしたいのですができませんでした。 [sheet車種合計] B C D E F G H 3 2006/12/22 福岡 長崎 熊本 宮崎 4 通勤 新 トヨタ 20 5 通勤 新 ホンダ 60 6 通勤 新 日産 7 通勤 新 三菱 8 9 通勤 中 トヨタ 40 10 通勤 中 ホンダ 40 11 通勤 中 日産 12 通勤 中 三菱 13 14 15 休日 新 トヨタ 20 16 休日 新 ホンダ 60 17 休日 新 日産 18 休日 新 三菱 19 20 休日 中 トヨタ 40 21 休日 中 ホンダ 40 22 休日 中 日産 23 休日 中 三菱
先生方ご教授お願いします。(エクセル2003、windows2000)
こんにちは〜♪
回答が付かないようですので〜♪ 作って見ましたが。 データ数が多そうなので 実用には向かないかも知れませんね。
[sheet車種合計]の E4セルに =SUMPRODUCT((INDIRECT(E$3&"!$A$5:$A$100")=$B$3)*(INDIRECT(E$3&"!$C$5:$C$100") =$B4)*(INDEX(INDEX(INDIRECT(E$3&"!D:K"),5,ROW(B1)*2-1):INDEX(INDIRECT(E$3&"! D:K"),100,ROW(B1)*2-1),)))
右と下は、7行目までコピーです。
ずりずりと、下までコピーの式も作れると思いますが これ以上式が長くなると、もっと重くなりますので。
>通勤 中 トヨタ の行以下は、この式を参考にしてください。
これは、マクロが良いと思いますけれど。。。
。。。。Ms.Rinでした〜♪♪
*******
追記で〜す。 式を入れるセルが違っていたようですので E4セルでした。
一応、縦横にコピーできそうなものを考えてみました。
E4=IF($A4="","",SUMPRODUCT((INDIRECT(D$3&"!$A$5:$A$12")=$A$3)*(INDIRECT(D$3&"!$C$5:$C$12")=$A4)* (OFFSET(INDIRECT(D$3&"!$"&CHAR(MATCH($C4,INDIRECT(D$3&"!$D$3:$K$3"),0)+67+(B4="中"))&"5"),0,0,8,1))))
で下と右側にコピーです。 あっていますかね? (SATO)
Ms.Rinさま、SATOさま お返事ありがとうございました。
>Ms.Rinさま 無事に合計が表示されました。ありがとうございます。 ひとつ質問なのですが、[sheet車種合計]のB4:B7を結合してしまうと、 E5:E7が表示されなくなるのですが、なにか対処方等ございますか?
>SATOさま 返事ありがとうございました。 しかしながら何回か確認したのですが、私の方では表示されませんでした・・・ (しゅうき)
Ms.Rinさんではないですが〜♪
セルの結合は、「見た目が美しくなる」という利点がありますが 「処理が難しくなる」という欠点があります。 エクセルに計算させて何かをやらせようと思ったら、セルの結合はさけるのが「吉」です。
リストはその一行でデータが成り立つように作るのが良いでしょう。 たとえば、B4:B7を結合すると、B5:B7には「何も入力されてない」事になります。 4行目は「通勤 新 トヨタ」ですから、トヨタ・新車の通勤用のデータ と分かりますが 5行目の場合「 新 ホンダ」となり、ホンダ・新車の内何用のデータが必要なのか 分からなくなってしまいます。
同じ文字が重複して並んでいるのが気になるようなら、2つ目以降の連続した同じ文字は 条件付き書式等を利用して、文字色を白にして目に見えなくする。で対応してはどうでしょう。
(HANA)
失礼しました。 前の式は表示する表が一列ずれていたみたいです。
=IF($B4="","",SUMPRODUCT((INDIRECT(E$3&"!$A$5:$A$12")=$B$3)*(INDIRECT(E$3&"!$C$5:$C$12")=$B4)* (OFFSET(INDIRECT(E$3&"!$"&CHAR(MATCH($D4,INDIRECT(E$3&"!$D$3:$K$3"),0)+67+(C4="中"))&"5"),0,0,8,1))))
とりあえず訂正しておきます。 なお、車種合計用シートにはトヨタ、ホンダ、日産、三菱、とあるのに 福岡の表には日産、三菱がない、という場合はその項目はエラーとなります。
またセルの結合をされた場合は、 =IF($B4="","",SUMPRODUCT((INDIRECT(E$3&"!$A$5:$A$12")=$B$3)*(INDIRECT(E$3&"!$C$5:$C$12")=$B4)* ~~~~ ~~~~ ここを$B$4と変更してE4:E7までコピー、E9:E12は$B$9としてコピー・・・ のような作業が必要ですから、HANAさんがおっしゃるとおり、 できるだけ結合は避けたほうが無難ですね。 (sato)
[ 一覧(最新更新順) ]
YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki.
Modified by kazu.