• ベストアンサー

エクセル SUMIF関数と、IF関数を教えて下さい

(1)売上のシートと利益のシートがあります。 欲しい数値は、「売上が101~300円の会社の利益合計」を利益のシートに出したいです。 (2)会社を売上ごとにランク付けしています。  S 501~  A 101~500  B 31~100  C 1~30 売上金額の横にその会社のランクを表記したいです。 よろしくお願いします。

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

  • ベストアンサー
  • KURUMITO
  • ベストアンサー率42% (1835/4283)
回答No.3

Sheet1のA2セルから下方に会社名が、B2セルから下方に売上高が、C2セルから下方にランク付けの表示が、D2セルから下方には利益が入力されるとします。 そこで、C2セルには次の式を入力して下方にオートフィルドラッグします。 =IF(B2>=501,"S",IF(B2>=101,"A",IF(B2>=31,"B",IF(B2>=1,"C","")))) Sheet2には売上がある範囲にある会社の利益の総額を表示させるために次のようにします。 A1セルには売上高の下限値、B1セルには売上高の上限値、C1セルには利益の総額と入力します。 そこで、A2セルには101、B2セルには300と入力します。 C2セルには次の式を入力し下方にオートフィルドラッグします。 =IF(A2="","",SUMIF(Sheet1!B:B,">="&A2,Sheet1!D:D)-SUMIF(Sheet1!B:B,">"&B2,Sheet1!D:D))

ne-tsu-
質問者

お礼

ありがとうございました。教わったやり方で解決しました!

その他の回答 (2)

  • tom04
  • ベストアンサー率49% (2537/5117)
回答No.2

こんばんは! 回答になっているかどうか判りませんが・・・ ↓の画像で説明させていただくと (表が希望通りになっているかどうかは判りません) (1)に関しては C10セルに =DSUM(A1:C5,3,A9:B10) という数式を入れています。 (2)に関しては、色々方法があると思いますが、 一例として、F~I列に表を作成して、売上に応じてA~Cを表示させるようにしています。 D2セル =IF(B2>500,"S",INDEX($F$3:$F$5,MATCH(B2,$I$3:$I$5,-1))) としてオートフィルで下へコピーします。 以上、参考になれば幸いですが 的外れの回答ならごめんなさいね。m(__)m

ne-tsu-
質問者

お礼

画像まで付けていただいてとても見やすい回答ありがとうございました。

  • landmes
  • ベストアンサー率54% (6/11)
回答No.1

(2)のみですが. A1がその会社の売上金額として,またS~Cの度のランクにも当てはまらないときDとすると, 表記したいセルを↓のように書けばいいのではないでしょうか. 会社分フィルハンドル(右下の+をドラッグ)で. =IF(A1>=501,"S",IF(AND(A1>=101,A1<=500),"A",IF(AND(A1>=31,A1<=100),"B",IF(AND(A1>=1,A1<=30),"C","D"))))

ne-tsu-
質問者

お礼

ありがとうございました。解決しました!

関連するQ&A