- ベストアンサー
Excel2000条件付き書式で小数点以下0の時塗りつぶしをする方法
- Excel2000の条件付き書式を使用して、小数点以下が0のときにセルを塗りつぶす方法を探しています。
- 以前、"=(A1-INT(A1))=0"という式を試しましたが、計算式を含む場合にうまく動作しませんでした。
- 現在も再度試しているところですが、どのようにすれば正しく動作するのかわかりません。助けてください!
- みんなの回答 (5)
- 専門家の回答
質問者が選んだベストアンサー
a1セルに条件付書式"=(A1-INT(A1))=0"を指定して、a1以下にはa1をコピーして 書式のみ貼り付け。 少数点の計算は演算誤差があるのでツール→オプション→計算方法を選択。 「表示桁数で計算する」にチェックを入れオーケーボタンを押す。 元には戻せませんと出るがオーケーを押す。 目に見えた表示桁数で計算するので式が入ったセルも塗りつぶしてくれる。 エクセルの少数点以下の計算は目に見える桁より下も計算してしまうので このようなことが起きる。 以上。
その他の回答 (4)
- KURUMITO
- ベストアンサー率42% (1835/4283)
演算誤差による影響を避けるためには条件付き書式の設定で例えば次のような式にしても良いですね。 =(ROUND(A1,4)-INT(A1)=0"
- okormazd
- ベストアンサー率50% (1224/2412)
変換誤差の問題でしょう。 コンピュータは2進数で計算しています。計算の桁数(ビット)が有限なので、10進→2進または逆の変換で、ちょうどの数に変換できないのです。0は2進でも10進でも0ですが、0.1は10進で0.1でも2進への変換ではちょうど0.1には変換できません。いくらか誤差があります。それを何回も加算すれば、誤差がたまってきて、無視できなくなれば、A1-INT(A1)=0にはならなくなります。 この誤差は2進計算のコンピュータでは回避できない問題で、EXCELのバグではありません。こういう誤差があることを承知でコンピュータを使ってください。 誤差がたまらないように、 0.1の加算を、 =INT(A1*10)/10+0.1 で計算してみてください。 前までの誤差をINTで破棄しています。
- DIooggooID
- ベストアンサー率27% (1730/6405)
> A1セルは塗りつぶされるのですが、4.1、4.2・・・・・以下は塗りつぶされませんでした。 4.1、4.2・・・・ これらは、 小数点以下0 ではありません。
- aokii
- ベストアンサー率23% (5210/22062)
条件付き書式で塗りつぶしをしたい全てのセルに書式のみを貼り付けてみて下さい。