アプリ版:「スタンプのみでお礼する」機能のリリースについて

OFFSET関数初心者の為、ご教授願います。

添付したような売上管理表があります。
月の行から粗利の行まで8行で作成されている表が何行もあります。
そして、一番下に合計の表があり、SUMIF関数で集計を出しているのですが
今後、商品2、商品3といったように新規で売上が発生すると、この8行の表を
コピーして挿入で増やしていくことになります。

その際、参照先の行が可変するので都度、数式を変えなくても行が追加になったら
合計のSUMIF関数の参照先が自動的に変わるようにしたいです。
ちなみに、合計、実績の列ともに参照先可変としたいです。
現時点、下記の数式で処理をしています。
=SUMIF($C$4:C54(C列の項目参照),$C68(数量),E$4:E54(実績)の列を参照)
数量以下、同様の数式です。

何卒、よろしくお願いいたします。

「SUMIFとOFFSETの組み合わせにつ」の質問画像

A 回答 (6件)

No2です。


No2で、E列が変わっても、対応できるようにしました。(E→Hの場合にも対応)
=SUMIF(INDIRECT("$C$4:$C"&ROW()-10),INDIRECT("$C"&ROW()),INDIRECT(ADDRESS(4,COLUMN(),4)&":"& ADDRESS(ROW()-10,COLUMN(),4)))
    • good
    • 1
この回答へのお礼

助かりました

tatsu99さま
お忙しい中、今回もご教授いただきましてありがとうございます。
しかも、列の可変にも対応できるように再度ご教授頂き感謝いたします。
早速、実行したところ無事解決いたしました。
INDIRECT、ADDRESS関数を使用するのですね。
毎回、こういった場合は手修正をしていたのでとても勉強になりました。
本当にありがとうございます。

お礼日時:2017/06/15 15:20

No.1です


>57行目から65行目にも同じフォームの行があります。
ならば、そこに数量が入っていなければ、No1での回答通り
=SUMIF(C$4:C$66,C68,E$4:E$66)
でいいと思う。(若干修正)
66行目より上に挿入する分には、計算範囲が変わってくれますよ

質問でご呈示の
=SUMIF($C$4:C54,$C68,E$4:E54)
で 54より下に新しい行を挿入しているんだと思う
    • good
    • 1

No3です。


この回答ではE列について固定されてしまうので、期待した回答ではないかもしれません。その場合は無視してください。
    • good
    • 1

該当箇所へ


=SUMIF(INDIRECT("$C$4:$C"&ROW()-10),INDIRECT("$C"&ROW()),INDIRECT("E$4:E"&ROW()-10))
と入力してください。

=SUMIF($C$4:$C58,$C68,E$4:E58)

58を作るためにROW()で行数(=68)を取得し、-10しています。
そうすると "$C$4:$C60" が得られます。これをセルとして参照する為にINDIRECT関数を使います。

ほかも同様です。
"$C68" "E$4:E58" を作成し、INDIRECTでセルとして参照させます。
    • good
    • 1

一般的に、データーを記録して統計を取る場合は、


・ データーは、単に記録する、
・ 統計は、記録データーを目的に応じた形態で集計する、
と言う形のほうが、統計の形態に柔軟に対応できます。

ご質問の形は、データー記録が見た目統計表(個人好み)になっているから、
応用が難しくなっているといえます。

ご提示内容でいえば、記録データー項目を、
 日付、会社名、品名、費目1(数値、…)、費目2(計画、…)に対する数値
等にすれば、
ご提示の表の上下の表統計の作成さえ容易になるでしょう。

ご参考まで。
    • good
    • 2

57行目から65行目が何なのか気になりますが


=SUMIF($C$4:$C$66,$C68,E$4:$E$66)
で良いような???
    • good
    • 1
この回答へのお礼

ご回答いただきましてありがとうございます。
57行目から65行目にも同じフォームの行があります。
※商品2、3の表。

なので、今後新しい商品が出てくると同じ表を行挿入することになりますので参照先がずれます。
なので、行挿入しても自動的に新しい行までを参照するようにしたいのです。

お礼日時:2017/06/15 09:00

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!