• ベストアンサー

文字をぬいた計算の仕方。

検索などしたのですがわからないので教えてください。 社員A A商品 10     B商品 20 社員B A商品 休     B商品 20 社員C A商品 10     B商品 20   A商品合計 20   A商品合計 60 となるように休の文字を入れたときの計算式を教えてください。 ifも考えたのですが社員が多いので複雑になりました。

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

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

例えばB列に商品名が並びC列にその数があるとします。 A商品の数をD1セルに表示するとしたら=SUMIF(B:B,"A商品",C:C)と入力することで、たとえ休はあったとしても文字列は無視されて数値のみが合計されます。 D1せるにA商品と入力してD2セルに=SUMIF(B:B,D1,C:C)のようにしてもよいでしょう。

cbu32850
質問者

お礼

ありがとうございました。 無事解決できました。

その他の回答 (2)

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

こんばんは! 色々方法はあると思いますが・・・ 一例です。 ↓の画像はDSUM関数を使っています。 (社員名に空白があるとちゃんと計算されませんので、すべて埋めておかなくてはなりません) B10セルに =IF(A10="","",DSUM(A1:C7,3,A9:A10)) という数式を入れています。 これでA10の商品名を変えるだけでその商品の合計が表示されるはずです。 尚、余計なお世話かもしれませんが、 下の右側の表の合計欄のG10セルに =IF(COUNTBLANK(E10:F10)>0,"",DSUM(A1:C7,3,E9:F10)) という数式が入っています。 この場合は社員名と商品名を選んでその合計を表示することが出来ます。 他の方法としては、オートフィル機能とSUBTOTAL関数でも対応できそうですね。 以上、参考になれば幸いです。m(__)m

cbu32850
質問者

お礼

ありがとうございました。 無事解決できました。

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

SUM関数やSUMIF関数は指定した範囲内に文字列があっても無視され、数値のみが集計されます。文字があることを全く気にする必要はありません。 したがって金額などの項目名やその他の文字列が例えばB1セルからB3セルまであったとしても=SUM(B:B)でB列に入力されている数値のみが計算されるので、B列でデータがどんどん追加されてもセルの範囲を指定して=SUM(B4:B100)などの式にする必要もないのです。 なお、SUM関数ではなく=B4+B5+B6などの式の場合には文字列があれば計算はエラーとなりますね。 

関連するQ&A