[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]
『Sumifの合計範囲(列)を可変にしたい』(ここあ)
元となる表があります。
A列に商品、1行目(項目)にはBCDEF列・・・と店舗名があります。
これを店舗別のシートで商品別の集計をかけたいのですが、毎回元データのBCDEF・・の店舗の順番が変わります。
これをどのように集計すればよいでしょうか。
元データ(Sheet1)
aa bb cc dd ee あ 1 1 4 い 1 1 1 2 う 1 1 1 1 え 1 2 1 お 1 2 1 い 1 5 1 1 え 1 1 3 あ 1 1 え 3 1 1 1 お 1 1 1 う 1 1 1 1
各店舗別シート
aa あ ※計算式 い う え お
各店舗別シートの※計算式には以下の計算式を入れました。
=IFERROR(SUMIF(元データ!$A$1:$A$11,$B1,OFFSET(元データ!$A$1:$A$11,,MATCH($B$1,元データ!$B$1:$F$1,0))),"")
しかしながら、数値が正しく表示されません。
アドバイスをいただけると助かります。
よろしくお願いいたします。
< 使用 Excel:Excel2013、使用 OS:Windows7 >
セル位置がよくわからないけど、SUMIFの検索値は「A2」では?
=SUMIF(Sheet1!$A$2:$A$12,$A2,OFFSET(Sheet1!$A$2:$A$12,,MATCH($B$1,Sheet1!$B$1:$F$1,0)))
または
=SUMIF(Sheet1!$A$2:$A$12,$A2,INDEX(Sheet1!$B$2:$F$12,,MATCH($B$1,Sheet1!$B$1:$F$1,0)))
こんな感じ? 追記) $A2 → A2 でオッケー
下にコピーするだけですよね? (笑) 2016/03/08(火) 14:34
=SUMPRODUCT((Sheet1!$A$2:$A$12=$A2)*(Sheet1!$B$1:$F$1=B$1)*Sheet1!$B$2:$F$12) こんなのでも。 (ねむねむ) 2016/03/08(火) 14:52
はい。下にコピーするだけです。
両方当てはめてみましたが、OFFSETを使用した計算式では正しい数値が得られませんでした。(本来6のところ5が返ります)
なぜなのかどうしてもわかりません。
しかし、教えていただいたINDEXを当てはめたところ、正しい数値が返りました。
こちらを使用させていただきます。
この数式をみて勉強します。
(ねむねむ)さんも、ありがとうございます。
なるほど!!!sumproductでもできるのですね!勉強になります。
試してみます。
(ここあ) 2016/03/08(火) 14:56
> 本来6のところ5が返ります
↑ どの条件の場合ですか?
OFFSET と INDEX、両方同じ結果になりますけどね?
こっちでは。 (笑) 2016/03/08(火) 15:38
本来6のところ5が返ります は、OFFSETの場合でした。
INDEXの場合でも、同様のことがおきたのですが
SUMIFの検索値をA1にしたら、正しい数値が返りました。
試行錯誤しましたが結局できました。
もう少し勉強がんばります。
(笑)さん、(ねむねむ)さん、ありがとうございました。
(ここあ) 2016/03/09(水) 13:52
[ 一覧(最新更新順) ]
YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki.
Modified by kazu.