• ベストアンサー

エクセルのSUMIF関数での質問です。

会社コードで売上額を集計してます。 SUMIF(範囲,検索値,範囲)の検索値会社コードが 00E**という コードだとうまく計算されません。 VLOOKUPだとうまく引っ張ってくるのですが。。。 なにが原因でしょうか?

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

  • ベストアンサー
noname#52504
noname#52504
回答No.3

SUMIFやCOUNTIFは、数値として解釈できる文字列については、 勝手に数値として処理してしまうようです。 ↓も同様のトラブルですね。 ■countif関数の検索条件について http://oshiete1.goo.ne.jp/qa3378978.html SUMIFではなく、SUMPRODUCTあるいは配列数式を使えば、 文字列は文字列のままで計算されます。 00E123 1 00f124 2 00g234 3 00E124 4 00g234 5 00E123 6 00H213 7 =SUMIF(A1:A7,0,B1:B7) ⇒ 11 =SUMIF(A1:A7,"00E123",B1:B7) ⇒ 11 =SUMIF(A1:A7,"00E124",B1:B7) ⇒ 11 いずれも、1,4,6 がHITしてしまいますが、 SUMPRODUCTであれば、 =SUMPRODUCT((A1:A7="00E123")*B1:B7) ⇒ 7 =SUMPRODUCT((A1:A7="00E124")*B1:B7) ⇒ 4 と、きちんと数え分けることができます。

yoshiusa
質問者

お礼

ありがとうございます。 助かりました~ 参考のトラブル大変参考になりました。 

その他の回答 (2)

  • deecyan
  • ベストアンサー率38% (89/233)
回答No.2

00E10の表記では EXCELは指数表記と思っているので 00E12 でも 00E13でも 中身は 0 なんです。 比較するほうも 00E12 は 0 なので 値が 0 になるものはすべてサマリー されちゃうんです データ 00E123   1 00E131   2 00E122   4 00E124   8 00H12   16 0      32 00E12   64 3g25   128 00f10   256 式  =SUMIF(A1:A100,"00E123",B1:B100) は 111 =SUMIF(A1:A100,"00E12",B1:B100) でも 111 になります

yoshiusa
質問者

お礼

なるほど! 指数表記なんて知りませんでした。。 参考になりました。 ありがとうございます。

  • imogasi
  • ベストアンサー率27% (4737/17068)
回答No.1

私も下記の例でやってみましたが、追試に失敗しました。報告します。 Eはエクセルでは指数の表示なので疑いましたが、良く考えれば 関係ないでしょう。入力するとき00e12とか入力すると、指数表示 入力になるが。 ーー 例データ 00E123 1 00f124 2 00g234 3 00E123 4 00g234 5 00E123 6 00H213 7 ーー 8 =SUMIF(A1:A8,"00g234",B1:B8) 11 =SUMIF(A1:A8,"00E123",B1:B8) おかしくならず、正しいようですね。

yoshiusa
質問者

お礼

早速の回答ありがとうございます。 試してみました。 00E123 1 00f124 2 00g234 3 00E123 4 00g234 5 00E123 6 00H213 7 SUMIF(A1:A7,"00E123",B1:B7)=11 SUMIF(A1:A7,"00E124",B1:B7)=11 SUMIF(A1:A7,"00E12",B1:B7)=11 00E全部計算されてしまうようです。 でも00gだときちんと計算されるんですね。。。

関連するQ&A

  • エクセルのSUMIF関数なのですが・・・

    A列に日付、B列に販売員名、C列に売上金額とし、現在三ヶ月分800個のデータが入力されている状態だとします。 例えば販売員Yさんの現在の売上を集計しようとすると =SUMIF(B1:B800,"Yさん",C1:C800)になると思うのですが、Yさんの月ごとの売上集計を計算するにはSUMIF関数をどういう風に変えればいいのでしょうか。 分かりにくい説明かもしれませんが、どうぞ宜しく御願い致します。

  • EXCEL SUMIFについて

    EXCELでSUMIF関数を使って金額が集計される様になってるのですが 何故かBATTERYとTHERMISTORという品名だけが集計されません↓ 何故でしょうか?他の品名に書き換えると集計されるます。 ちなみに関数は=SUMIF(A1:A351,"BATTERY",G1:G351)と (範囲,検索条件,合計範囲)のセオリー通りでやってるのですが…

  • SUMIF関数

    よろしくお願いいたします Excel2007を使用しています SUMIF関数で=SUMIF(範囲,検索条件,[合計範囲])ですが この検索条件に2つ指定することは出来ますか 例えばE列に色々の項目が書かれていてその中の、 お菓子、本 と2種類を検索条件として合計を出したいのですが SUMIFでは出来ないとなれば、他の簡単な方法は有りますか。

  • エクセルSUMIF関数とOR条件

    「X」の条件を満たすデータをの合計を計算したい場合SUMIF関数、「X」および「Y」の条件を満たすデータの合計を計算したい場合は、SUMPRODUCT関数が使えると思いますが、 「X」または「Y」の条件を満たすデータの合計を計算したい場合は、 SUMIF(検索範囲,"X",合計範囲)+SUMIF(検索範囲,"Y",合計範囲)とやるしかないですか? それとも、SUMIFを並べなくても、1回で計算できる関数がありますか? ご存知の方、ご教授下さい。 どうぞよろしくお願いいたします。

  • <至急>SUMIF関数の応用?

    エクセル2000を使っています。 SUMIF関数の検索条件について困ってます。     A     B     C     D     E     ┏━━━┯━━━┯━━━┯━━━┯━━━┓ 1┃請求月│顧客名│金  額│顧客名│金  額┃  ┣━━━┿━━━┿━━━┿━━━┿━━━┫ 2┃先  月│あああ│○○円│いい い│○○円┃  ┠───┼───┼───┼───┼───┨ 3┃当  月│いい い│○○円│う う う│○○円┃  ┠───┼───┼───┼───┼───┨ 4┃翌  月│ええ え│○○円│おお お│○○円┃  ┠───┼───┼───┼───┼───┨ 5┃先  月│う う う│○○円│おお お│○○円┃  ┠───┼───┼───┼───┼───┨ 6┃当  月│あああ│○○円│いい い│○○円┃  ┠───┼───┼───┼───┼───┨ 7┃翌  月│ええ え│○○円│おお お│○○円┃  ┠───┼───┼───┼───┼───┨ 単純に請求月を無視して、顧客毎に集計するならSUMIF関数で出来ますが、 顧客名の欄、金額の欄が2つある上に 各顧客の集計を「先月・当月・翌月」と分けて集計する場合の計算式が分かりません。 金額の行を指定する時、普通はC2:C7とすればC2⇔C7間が 指定できますが、この表の場合「当月」は「B3・E3・B6・E6」 とバラバラなので(:)では指定することが出来ず、 どう指定してよいのか分からないのです。 でもこの考えはSUMIFに基づく考え方なので、他の計算式が 当てはまるかも知れません。 教えて下さい。宜しくお願いします。

  • SUMIF関数

    SUMIF関数で複数条件を設定したい場合、どのようにすればよいですか? たとえば、検索条件をAまたはBに設定したい場合、 =sumif(範囲,"A",検索範囲)+sumif(範囲,"B",検索範囲)とするしかないのでしょうか? ご存知の方ご教示ください。

  • EXCELのSUMIF関数

    EXCELの計算で、複数のAND条件に合致する合計値を計算するにはどのようにすればよろしいでしょうか? 例えば、以下のようにA1:F2の領域があり、行1に1月~5月、行2に各月の金利支払い額を入力するとします。 この場合、SUMIFやANDを上手に使って「2月から4月までの金利支払い合計額」(=SUMIF(A1:F1,AND(">="&C1,"<="&E1),A2:F2)ですと、エラーとなってしまいます…)を1個のセルで計算する方法はありませんでしょうか? ご教示の程、宜しくお願い致します。   A   B  C  D  E  F 1 月   1  2  3  4  5 2 金利 5  4  8  7  9

  • SUMIF関数の集計が上手くいきません。

    「集計」シートのA列に得意先コード・O列に集計欄 「貼付」シートのE列に得意先コード・J列に集計欄があります。 なお、「貼付」シートのE列は重複する場合もあります。 「集計」シートのA列の値を、「貼付」シートのE列から探して、その行のJ列の数値の合計を 「集計」シートのO列に集計したいと思っています。 「集計」シートのA406が「B」で「貼付」シートのE200とE300が「B」で、「貼付」シートのJ200が「150」 ・J300が「250」であれば「集計」シートのO406に「500」(150+250)を表示させたいと思っています。 なお、「貼付」シートのE列には他に「B」の値がないものとします。 そこで、O列に次の関数を入れました。 「=SUMIF(貼付!E:E,A403,貼付!J:J)」 すると、(O4:O405)の範囲では、きちんと「貼付」シートの、各得意先コード別の合計が表示されるの ですが、O406の値が「0」と表示されます。 数式は合っていると思うのですが、何が誤っているのか、わかるかたはいらっしゃいますか? 406行目がA列に得意先コードが入っている最終行であることも関係ありますか? あるいは、どのように集計したら良いのか、教えていただけると助かります。

  • SUMIF関数【複数のシートの検索範囲にするには】

    初めて質問します。 エクセルのSUMIF関数で、範囲と合計範囲を、複数のシートにまたがってを選択したいのですが、上手くいきません。 それぞれのシートの作り(行・列の数、表示形式など)は同じです。また選択する範囲も同じです。 目的は特定のクライアントの期間別の合計売上を算出することです。 シートごとに月単位の売上が記録してあり、検索条件にクライアント名を入力すれば、さかのぼった一定期間の売上が算出できるようにしたいのです。 SUMIF関数入力に従っていくと、【範囲】shiftを押しながらシートを選び、シート状の範囲を選択、【検索条件】、【合計範囲】shiftを押しながらシートを選び、シート状の範囲を選択、となります。 具体的な数式としては、 =SUMIF('3月売上:1月売上'!B2:B100,'0805'!$H$20,'3月売上:1月売上'!E2:E100) となりますが、エラーになってしまいます。いろいろ試したのですが、上手くいきません。どなたかお力添えをお願いしまう。 ※今回は連続する数ヶ月の範囲でしたので、シートを:でつないだもので問題ないのですが、もし任意の複数シートを選ぶ場合についても、教えていただければ幸いです。ctrlではダメでした。

  • SUMIF関数の使い方

    SUMIF関数で教えてください。 月別売上表のフォルダの中にある売上先、売上金額を(日ごとになってます。)を別のフォルダの年間得意先売上表にSUNIF関数で処理したいのですが、リンクした際、同時に開いているときは、計算されるのですが、いったん閉じて、SUMIF関数の入っている、得意先売上表を新たに開くと「VALUE」が表示されます。 これを、同時に開かずとも、表示できる方法を教えてください。 よろしくお願いいたします。

専門家に質問してみよう