SUMPRODUCTで切り上げ処理をしたい方法

このQ&Aのポイント
  • Excel 2007でSUMPRODUCT関数を使用して切り上げ処理をする方法について教えてください。
  • SUMPRODUCT(A1:A10, ROUNDUP(B1:B10,0))とした際にエラーが発生する原因と、解決方法について教えてください。
  • B列の値を小数点切り上げしたい場合に、SUMPRODUCT関数を使用する方法について教えてください。
回答を見る
  • ベストアンサー

SUMPRODUCTで切り上げ処理をしたい

Excel 2007です。 SUMPRODUCT(A1:A10, B1:B10) とした場合にはうまくいくのですが、B列の値を小数点切り上げた値にしようと SUMPRODUCT(A1:A10, ROUNDUP(B1:B10,0)) としたところ、エラーになってしまいました。 B列に文字の列があるのが原因のようなので、 SUMPRODUCT(A1:A10, ROUNDUP(ISNUMBER(B1:B10),B1:B10,0),0)) としたのですが、ISNUMBER(B1:B10)がB1からB10までのセルごとに判断せず、 B1:B10の塊でFALSEと判断されてしまうようです。 解決方法のご提示をお願いします。

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

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

こんばんは! 一例です。 =SUMPRODUCT(A1:A10,IF(ISNUMBER(B1:B10),ROUNDUP(B1:B10,0))) これは配列数式になってしまいますので、 Shift+Ctrl+Enterで確定してください。 ※ SUMPRODUCT関数そのものが配列数式ですが、その中に配列数式を組み込んでみました。 おそらく、B列に文字列セルが含まれていてもエラーにならないと思います。m(_ _)m

その他の回答 (3)

  • maron--5
  • ベストアンサー率36% (321/877)
回答No.4

>B列に文字の列があるのが原因のようなので =SUMPRODUCT(A1:A10*ROUND(TEXT(B1:B10,"G/標準;-G/標準;0;!0"),0))

  • keithin
  • ベストアンサー率66% (5278/7940)
回答No.3

>B列に文字の列があるのが原因 簡易版: B列にあるのが具体的には""である場合。 =SUMPRODUCT(A1:A10,ROUNDUP("0"&B1:B10,0)) 簡易版: その他の文字列が紛れている場合。 =SUMPRODUCT(A1:A10,IFERROR(ROUNDUP(B1:B10,0),0)) と記入し、コントロールキーとシフトキーを押しながらEnterで入力。

  • maron--5
  • ベストアンサー率36% (321/877)
回答No.1

=SUMPRODUCT((A1:A10)*ROUND(B1:B10,0))

関連するQ&A

  • 文字列AかBを含むセル数をSUMPRODUCT関数で求める場合

    文字列AかBを含むセル数をSUMPRODUCT関数で求める場合 エクセル2000です。 A1:A10のセル範囲だとして =SUMPRODUCT(ISNUMBER(FIND({"A","B"},A1:A10))*1) とすると、同一セルにA、Bの両方があった場合、重複してカウントされてしまいます。 重複を除外するために、 =SUMPRODUCT(ISNUMBER(FIND({"A","B"},A1:A10))*1)-SUMPRODUCT(ISNUMBER(FIND("A",A1:A10))*ISNUMBER(FIND("B",A1:A10))) と、重複してカウントされた数から両方が存在するセルの数を減じて求めましたが、以下のようなより簡素な式でも求められことがわかりました。 =SUMPRODUCT((ISNUMBER(FIND("A",A1:A10))+ISNUMBER(FIND("B",A1:A10))>=1)*1) この式でなぜAB両方があるセルが重複カウントされないのかどうもわかりません。 ご教示いただければ幸いです。 なお、SUMPRODUCTではなく =SUM(COUNTIF(A1:A10,{"*A*","*B*"}))-SUM(COUNTIF(A1:A10,{"*A*B*","*B*A*"})) でもできることは存じておりますが、今回はSUMPRODUCTの疑問として質問いたしました。

  • 【SUMPRODUCT】について

    下記リストと条件で価格を算出したいのですが、A列の「7」以外の数字まで反映された値がかえってきてしまいました。適切な関数を使用しているかも不明です。 アドバイスのほどお願いいたしますm( _ _)m --------------------------------------------------------------- セル A列 B列 C列 D列 E列 1 5 A リンゴ店 TEL \100 2 5 B ミカン店 FAX \200 3 7 C リンゴ店 TEL \100 4 7 A ミカン店 FAX \200 5 7 B リンゴ店 TEL \100 6 7 C ミカン店 FAX \200 --------------------------------------------------------------- <条件> A列 「7」 B列 「B」と「C」 C列 「ミカン」を含む D列 「FAX」以外 <作成した数式>(かえってきた値は上の条件とは相反したデータで、恐らくA列の「7」以外の数字も含んでいるようです・・) =SUMPRODUCT((A$2:A$10=7)*(B$2:B$10="B")*(B$2:B$10="C")*(E$1:E$10)) +SUMPRODUCT((A$2:A$10=7)*ISNUMBER(FIND("ミカン",C$1*C$10))*(E$1:E$10))+SUMPRODUCT((A$2:A$10=7)*ISERROR(FIND("FAX",D$1:D$10))*(E$1:E$10)) 以上、質問が長くなってしまい申し訳ありません。 ご教授のほどどうぞ宜しくお願いいたします。

  • 負数のみを対象としたSUMPRODUCT関数

    エクセル2000です。 たとえば A1:A40 がCCCでないもののうちの B1:B40 の中での最大値をSUMPRODUCT関数で求める方法は以下の式だと思います。 =SUMPRODUCT(MAX((A1:A40<>"CCC")*(B1:B40))) ところが、B1:B40 の数値がすべて負の数だった場合、返って来る答えは常に 0 になるようです。 最初は原因がわからず、途方にくれていましたが、A1:A4の中で値がCCCのセル場合、そのセルが返す値は FALSE で、これを対応するB列に乗じた積を 0 としているのではないかと推測しました。 そこで、次の式のように FALSEの数+1番目に大きい数を指定したところ、やっと負の数のなかから最大値を返すようになったように思います。 =SUMPRODUCT(LARGE((A1:A40<>"CCC")*(B1:B40),COUNTIF(A1:A40,"CCC")+1)) この推測は合っているのでしょうか? 他にもっと簡単なやりかたがあるのでしょうか?

  • 関数の使い方SUMPRODUCT?DCOUNT?

    エクセルの関数の使い方についてアドバイスをお願いいたします あるシート(仮にSheetAとする)において B列にあるデータの任意の文字(仮にCとする。文字位置は固定ではない)であって、且つ D列にあるデータの任意の文字(仮にEとする。文字位置は固定ではない)の双方を満たすセルの数を数えて、さらにその結果は同じファイルの中にある別のシート(仮にSheetFとする)に表したいと思います これについては関数SUMPRODUCTと関数FINDを使って導きたいと考えておりました。 =SUMPRODUCT(ISNUMBER(FIND("C",B1:B100))*ISNUMBER(FIND("E",D1:D100))) として同じシート上に結果を表すことはできたのですが、別シートに表すところで、 つまづいてしまいました(おそらく初歩的なミスと思うのですが・・・。) 別のシート名を表す部分をどこに入力したらいいのかアドバイスいただきたく お願いいたします それとも別の関数(DCOUNTなど)を使用したほうがよりベストなのか迷っています DCOUNTの使い方も精通しておらず苦慮しております 調べてみましたが前例を見つけだす事ができませんでした 簡単なことでしたらすみません エクセル2003です どうぞアドバイスのほど よろしくお願いいたします

  • エクセル関数SUMPRODUCTについて

    エクセル2000です。 A列とB列の和にC列を乗じたものの合計は、 =SUMPRODUCT(A1:A10,$C$1:$C$10)+SUMPRODUCT(B1:B10,$C$1:$C$10) または =SUM(SUMPRODUCT(A1:A10,$C$1:$C$10),SUMPRODUCT(B1:B10,$C$1:$C$10)) のような長ったらしいものになるのでしょうか? =SUMPRODUCT((A1:B10)*C1:C10) は、表中に文字列が入る場合があるのでエラーになります。 ご教示いただければ幸いです。

  • SUMPRODUCT($A$1:$A$10,$B$1:$B$10)とSUMPRODUCT($A$1:$A$10*$B$1:$B$10)

    エクセルのSUMPRODUCT関数についてお尋ねします。 =SUMPRODUCT($A$1:$A$10,$B$1:$B$10) と =SUMPRODUCT($A$1:$A$10*$B$1:$B$10) の違いは何でしょうか? 両者とも同じ答えを返しますが、いろいろ試したところ、前者は範囲内に文字列があってもそれを無視して計算し、後者は文字列があればエラーになるようですが、その理解で正しいでしょうか? 正しいとすれば、なぜでしょうか?

  • SUMPRODUCT関数で0(ゼロ)と

    はじめまして。arumikan091と申します。 (Excel初心者です(^^;) ExcelのSUMPRODUCT関数について質問があります。 A B (1) 2 0 (2) 2 4 (3) 2 (空白) (4) 2 3 (5) 2 0 (6) 3 4 (7) 3 (空白) というシートの中で、 "A列が2で、かつB列が0の個数を数える" ということをしようと思い =SUMPRODUCT((A1:A7=2)*(B1:B7=0)) と入力したのですが、 これだとB列の0(ゼロ)と一緒に""(空白)も 数えられてしまうようです。 (上記シートだと式の期待値は2なのですが、 実際値は3が返ってきます) このような場合、0(ゼロ)だけを数えられる ようにするにはどのようにすればいいか 教えていただけたら幸いです。 一応、自分でも少ない知識の中で色々トライしてみて、 =SUMPRODUCT((A1:A7=2)*(B1:B7=0))-SUMPRODUCT((A1:A7=2)*(B1:B7="")) のように式を入力するとちゃんと0(ゼロ)だけを 数えてくれるようなのですが、さらに簡単な 方法がありましたら教えてください。 Windows ME、Excel2000です。 ※1 B列単独で =COUNTIF(B1:B7,0)とするとちゃんと 0(ゼロ)だけを数えてくれます。 ※2 一応既存のQ/A集で同じ質問がないか探しましたが、 (「SUMPRODUCT 空白セル」のANDで) 同様、類似の質問が既にありましたら 申し訳ありません。 長文失礼しました(m_ _m

  • エクセルの関数

    セルAとセルBに小数点の値があります。 セルAとセルBどちらか、 (1)0.2以下の値がある場合には、セルAかセルBの値の大きい方を別の列のセルCに入力。 (2)両方とも0.2以上の時には、上記とはまた別の列のセルDに【セルA×セルB】の値を入力。(小数点2桁まで表示、以下四捨五入) (1)と(2)で表示されたものを、またまた別の列のセルEにまとめて、 (1)は 値×5(小数点切り上げ) (2)は 値×25(小数点切り上げ) というものを作りたいのです。 IFとANDとROUNDUPなど使ってやってみましたが、わけがわからなくなってしまったので、 どなたか教えていただけたらありがたいです。

  • エクセルで教えてくだいSUMPRODUCT

    A列B列に文字と数字が混ざって並んでいます A列で7かつB列で0以上の個数を調べたいのですが SUMPRODUCTを使うと文字を0と認識するようでうまくできませんどうしたらいいですか A B 7 9 7 5 7 みかん この場合2個ですが文字のおかげで3になってしまいます

  • <エクセルSUMPRODUCTの使用と条件書式に関して>

    <エクセルSUMPRODUCTの使用と条件書式に関して> エクセルは合計と平均しか使用したことのない初心者です。 以下を求めたく、当サイトを拝見しておりましたが、合致するQ&Aが見当たらず (近いものはあるようなんですが、初心者すぎてうまく応用できませんで、、) 困ってお知恵を拝借したく、投稿します。 <状況> 列A1~A50、列B1~B50のセルに、1~30までの数字がランダムに入ってる。 ※エクセルは2000を使用しています。 <求めたいこと> (1)列A1~A50で「7と同等または7より大きい数字」が入っており、かつB1~B50で 「2と同等または2より大きい数字」が入ってるセルの個数を調べたい。 (2)上記の条件(A列で7以上、B列で2以上)のセルを網掛けしたい。 <試したこと/補足> ・「求めたいこと(1)」に関して、サイトを参考に以下を作成してみましたが、機能しなかったようです。  「SUMPRODUCT」を使用するのは検討違いでしょうか、、。 =SUMPRODUCT((A1:A50=">=7")*(B1:B50=">=2")) ・「求めたいこと(2)」に関して、条件が‘1以上のセル’などの場合は 「(書式→)条件付書式」を使用しております。が、上記のように「‘A列においては○以上’かつ ‘B列においては○以上’」のような複数の書き方はわかりません、、。 初心者で、状況の説明もつたなく恐縮ですが どなたかお力を頂けるとうれしいです。 どうぞよろしくお願いします。

専門家に質問してみよう