• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:CSVファイルのエクセル取込(VBA)で小数三位が消える!?)

CSVファイルのエクセル取込(VBA)で小数三位が消える!?

このQ&Aのポイント
  • CSVファイルのエクセル取り込み(VBA)において、小数点以下第三位まである数値がエクセルに取り込まれた段階で小数点以下第二位までに四捨五入される現象が発生しています。さらに、取り込んだセルの表示形式が通貨(¥マーク付き)になっています。この現象の原因と正しい小数三位までの取り込み方法を教えてください。
  • CSVファイルをエクセルで開くと正確に小数三位までの数値が表示されますが、VBAを使ってCSVファイルをエクセルに取り込む際に小数点以下第三位が消える現象が起きています。また、取り込んだセルの表示形式も通貨(¥マーク付き)になっています。この問題を解決する方法を教えてください。
  • VBAを使用してCSVファイルをエクセルに取り込む際に、小数点以下第三位まである数値が小数点以下第二位までに四捨五入されてしまう問題が発生しています。また、取り込んだセルの表示形式が通貨(¥マーク付き)になっています。この問題の原因と解決策を教えてください。

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

  • ベストアンサー
  • wakky_tom
  • ベストアンサー率40% (20/50)
回答No.2

追記です。 csvファイルがすべて数値だと思っていたもので・・・ Dim Columni As String で回避することは出来ると思うのですが、さんが求めているものはもっと高いレベルのような気がしてきました。 すみませんでした。。。

AQUALINE
質問者

補足

> csvファイルがすべて数値だと思っていたもので・・・ 文字(全角および半角英字)と整数と小数です。 Dim Columni As String で十分問題は解決しました。 小数も正しく表示されましたし、空白がゼロにかわったり。文字が消えることも今のところ有りませんでした。 これでいいと思うのですが、何か問題が起きる可能性があるのでしょうか? 昨日からやっていますがまだ問題はおきていません。 ご教示いただけると幸いです。

その他の回答 (3)

  • wakky_tom
  • ベストアンサー率40% (20/50)
回答No.4

こんばんは Stringは一応、文字列、数値とも対応できるので大丈夫だと思います。 お役に立てて幸いです。

AQUALINE
質問者

お礼

ありがとうございました。 お礼が遅くなり申し訳有りませんでした。 本当に助かりました。

  • wakky_tom
  • ベストアンサー率40% (20/50)
回答No.3

AQUALINEさんのお名前が抜けてしまいました。 失礼しました。

  • wakky_tom
  • ベストアンサー率40% (20/50)
回答No.1

こんにちは 原因究明には至っておりませんが・・・ Dim Columni As Double を追加してはいかがでしょうか? 私も実際試しましたが、AQUALINEのおっしゃるとおりの結果になりました。 不思議ですねぇ。

AQUALINE
質問者

補足

早速ありがとうございました。 ためしたところ小数点については解決しました。 しかし今度は空白データおよび半角1文字だけのデータ「E」がすべて「0」に置き換わってしまいました。

関連するQ&A