- ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:計算結果をコピーすると桁数増加・・・)
エクセル2003のコピー時に桁数が増える現象の解決方法
このQ&Aのポイント
- エクセル2003で数値をコピーすると桁数が増えてしまう現象があります。具体的には、0.024が0.0240000000000009や0.011が0.0109999999999673となってしまいます。
- 必要なのは小数点以下3桁までの値ですが、現在の計算ではそれ以下の値も含めてしまっています。この問題を解決するために、セルの最大桁数を計算し、小数点以下3桁にまとめる方法を知りたいと考えています。
- 具体的には、以下の式を使って計算しています。 Ro = Application.Round(Cells(Count_R, Count_C).Value, 0) Ab = Abs(Cells(Count_R, Count_C).Value) coun = Len(Ab) - Len(Ro) counが3より大きい場合、IF文を使って小数点以下3桁にまとめる計算を実行したいです。どのようにすればいいでしょうか?
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
>必要な桁数は小数点以下3桁まででなので、それ以下の値を排除して小数点以下3桁にまとめたい ⇒Ro = Application.Round(Cells(Count_R, Count_C).Value, 3)では駄目なの でしょうか。
その他の回答 (1)
- MARU4812
- ベストアンサー率43% (196/452)
回答No.1
Len も引数を文字列として処理しますが、 文字列で考えて小数部の長さが3桁より 先を切り取ればいいのですね。 Mid 関数でいいと思います。
質問者
補足
早速の回答ありがとうございます。 ところでMid関数を使用して3桁以下を切り取ると0.011の0.0109999999999673場合は0.010と成ってしまわないのでしょうか?
補足
この状態だと確かに3桁目で表示されるのですが、セルの値に変化は有りませんでした。 しかし、Ro値をセルに書き込み事によって実行可能に成りました。 ありがとうございました。