• ベストアンサー

Excelで33361.473が表示されない

Office2003proを使用しています。 Excelを起動して、どこのセルでもいいので 33361.473 という数値を入力すると、セルにはそのままの数字が表示されるのですが、関数バーには 33361.4729999999 と表示されてしまいます。 複数台のPCで試しても同様の表示になるのですが、これはexcelの仕様なのでしょうか。 いろいろ調べていたら、浮動小数点というものがあるらしいのですが、今回の原因について、お分かりでしたらご教示下さい。 よろしくお願い致します。

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

  • ベストアンサー
  • ASIMOV
  • ベストアンサー率41% (982/2351)
回答No.4

>2進法で完全に表示できるはずの整数部分が小数点以下の部分にも影響を与えているということなのでしょうか 33361.473 という数値の場合 「33361」の整数と「473」の小数として計算している訳ではありません 「33361473」の有効数字+指数として計算しているので、どの桁の数値でも影響は有ります

ochibgizmo
質問者

お礼

>「33361473」の有効数字+指数として計算している まさにこのような回答を求めていました! 有効数字や指数については、全く理解できておりませんが、整数+小数ではないということが分かったのでスッキリしました。 ありがとうございます。

全文を見る
すると、全ての回答が全文表示されます。

その他の回答 (4)

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

詳しくは以下を参考にしてください。 http://pc21.nikkeibp.co.jp/special/gosa

全文を見る
すると、全ての回答が全文表示されます。
  • maron--5
  • ベストアンサー率36% (321/877)
回答No.3

◆“達人”芳坂和行氏に学ぶ、エクセル(Excel)「演算誤差」対策講座 第1回 小数計算で発生する「誤差」 ―― 単純な計算の答えが合わない理由 http://pc.nikkeibp.co.jp/pc21/special/gosa/eg1.shtml

全文を見る
すると、全ての回答が全文表示されます。
  • FEX2053
  • ベストアンサー率37% (7987/21355)
回答No.2

Excelは非常に「計算が苦手な」ソフトです。 この手の問題の詳細はこちらで。 http://pc.nikkeibp.co.jp/pc21/special/gosa/eg1.shtml 防ぐには、1000倍して整数で計算を終え、表示時点で小数に戻す しかありません。

ochibgizmo
質問者

お礼

ご回答ありがとうございます。 参考URLは確認済なのですが、疑問点があります。 33361.473はexcelでは33361+0.4729999999という形で「表示」される(処理はまた別かと思います)のですが、 33360.473は33360+0.4729999999とは表示されない点です。 これも、やはり裏側での整数部分の処理が少数部分にも影響を与えているのでしょうか。

全文を見る
すると、全ての回答が全文表示されます。
  • KURUMITO
  • ベストアンサー率42% (1835/4283)
回答No.1

浮動小数点誤差と言われるもので、パソコンでの計算はすべてが2進法が基本となっていることによるもので、エクセルの仕様と云えばそれまでのことです。

ochibgizmo
質問者

お礼

ご回答ありがとうございます。 やはり浮動小数点の問題なのですね。 不思議なのが、33361.473ではなく1.473や61.473や333361.473というように、小数点以下は変更せずに整数部分のみ変えた数値を入力すると、関数バーにも入力した値のままで表示されることです。 2進法で完全に表示できるはずの整数部分が小数点以下の部分にも影響を与えているということなのでしょうか。

全文を見る
すると、全ての回答が全文表示されます。

関連するQ&A

  • エクセルの表示形式について

    エクセルで普通に数字を入力すると、セルの書式設定の表示形式は標準で、数字はセルの右側に寄ります。 次に、平均を出して小数点以下がいらないので、表示形式を数値にして小数点以下を0にします。 すると入力した数字と平均の数字では、字の位置が少しずれて、平均の数字が少し左に寄っています。 なぜこのような設定なのでしょう。 また、表示形式を数値にしても右端に寄るようにできないのでしょうか。 通貨で表示すると揃うんですけどね 暇なときでよいのでお願いします

  • 【エクセル】 「3,465」を「 」「3」「4」「6」「5」と表示させたい。

    「エクセル2003の関数式について」 いつもお世話になっております。 以下の件についてご教示いただきたく質問いたします。 セルA1に「3,465」という数値が入力されています。 その数字を分解して、 セルF1に「5」E1に「6」D1に「4」C1に「3」B1に「空白」と表示させるには、どのような数式を1の行に入れるのでしょうか。 よろしくご指導のほどお願いいたします。

  • エクセル浮動小数点演算誤差?が見えない

    エクセル2010です。 BOOK-AのシートBのE7セルに0.822という数値が入っています。 見た目も、数式バー上も0.822です。 BOOK-BのシートCのE7セルにも0.822という数値が入っています。 見た目も、数式バー上も0.822です。 ところがこれを =[B.xlsm]Sheet1!E7=E7 で比較すると、falseが返ります。 これまで浮動小数点演算誤差で、見た目がおなじでも小数点以下かなり下の方で違いケースは経験していましたが、その場合でも小数点以下の表示を20位くらいまで表示させると違いが表れました。ところが今回は小数点以下30位まで表示させても0.822000000000000000000000000000で誤差が見えません。でもfalseになります。 こんなことってあるんでしょうか?

  • エクセルの表示形式で、10の桁で四捨五入した値を表示させるには?

    エクセルの表で、数字を四捨五入する方法にはROUND関数がありますが、関数で変換すると値そのものが変わってしまいます。 値はそのままで四捨五入した数字で表す方法を教えてください。 小数や一桁の整数までの四捨五入であれば、セルの書式設定・表示形式を「数値」にして小数点以下の桁数を指定してやれば簡単ですが、10の桁以上で丸めて表示させる方法を探しています。 例えば、9876→9880と表示させる書式設定の方法です。 値は計算に使うので、ROUND関数で実際に丸めたくないのです。 ユーザ定義を組み合わせるなどで、うまくできませんか?

  • Excelのバグ?

    Excel2000にて、セルに 『202・203・217・218・249・250・255』の どれかの数字を半角にて入力し『数式編集ボタン』"=" を クリックすると、通常だと 「=202」となりますが、 これら数値の場合、数式バーには 「=202()」 と表示され、 『[ヘルプ]をクリックすると、この関数と引数に関する ヘルプトピックが表示されます。 この関数に引数は必要ありません。』と、メッセージが 表示されます。ヘルプでは、当然何も表示されません。 なぜ、これらの数値では、引数指定の 「( )」 が付くのか 不思議です。 上記数字は「200~269」を調べたもので、他の数値でも発生するかもしれません。 また固有PCではなく、複数PCにて現象が確認出来ますので PCやOSには関係なく、単純にExcelの問題だと思うのですが・・・?

  • エクセルで欠番表示

    エクセルのプロの皆さまおしえてください。 例: A1~A100にランダムで数字を1~100まで打ち込む作業があるとします。 しかし、最後が101?となった場合途中の数字をとばして打ち込んだ事になりますよね。 そこでチェック用として1~100の数字の間でなにを未記入なのかを別のセルに表示させるって事できませんか?1から順番に数えてチェックしていくのが大変なんです。しかもランダムに打ち込んでいるので・・・ 欠番が複数あっても表示できれば幸いです。 マクロとかはできないんで関数でのやりかたを希望しています。

  • エクセルで0.0と表示したい

    エクセルで0.0と表示したいのですが、セル書式設定を、数値、小数点以下の桁数を1にしても、表示されません。ユーザー設定を何にすればよいか教えてください。

  • エクセルで関数SUMなどで

    エクセルで関数SUMなどで 合計を求めた数値が、あるセルにあるとします。 その合計の数値を、そのまま数字として ・・・(関数(計算式)は無くして) 他のセルに貼り付けたいのですが そのような事は出来ますでしょうか・・・。 御教示の程、よろしくお願いいたします。 <m(__)m>

  • EXCELのJIS関数で0の表示

    お世話になります。 EXCELのJIS関数で半角数値を全角に変換表示したいのですが、”1.00”などの”.00”の表示がされません。 ’を付けて入力してもエラーとなり、セルの書式設定で小数点を表示するように設定してもやはり反映されません。 数値の半角から全角の変換表示は無理でしょうか?

  • エクセルのAVERAGE関数について

    AVERAGE関数を使って求めた平均が2桁の数字で表示されているのですがそのセルを別のセルにセル参照すると小数点つきでセル元と同じ数値が表示されません。参照先でROUND関数を使うのもおかしいと思うのですがこう言った場合はどうすればよいのでしょうか?基本的な事がわかっていないのかもしれません。

専門家に質問してみよう