• ベストアンサー

エクセル2003でcsv出力をしました。

エクセル2003でcsv出力をしました。 抽出前のデータは19桁で、抽出後の数字も17桁ですが、なぜか下3桁が000となってしまいます。 試しに、抽出前のデータを参考に下3桁を打ち込みましたが、enterを押すと000に戻ってしまいます。 また、19桁の頭に'を付けるとenterを押しても修正できました。 なぜ自動的に下3桁が000になるのか?修正してもそのままでは000になってしまうのか? また、抽出前のデータがそのまま反映できないのか教えてください。 ちなみに、マクロをチェックしましたが、何も入っていないようです。

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

  • ベストアンサー
  • MackyNo1
  • ベストアンサー率53% (1521/2850)
回答No.3

19桁の数字の文字列をエクセルに出力したいなら、外部データの取り込みの機能を利用します。 「データ」「外部データの取り込み」で「データの取り込み」からcsvファイルを指定し、表示されるテキストファイルウィザードの3/3でその数字の列を「文字列」にして取り込んでください。

その他の回答 (2)

  • akiomyau
  • ベストアンサー率43% (555/1280)
回答No.2

後から、書式設定で文字列としても読み込んだ時点で数値として扱われることが原因です。 そして、CSV形式は書式情報を持つことができないのも要因の一つとしてなります。 その為に明示的に'を付けて文字列として表す必要があるのです。

  • akiomyau
  • ベストアンサー率43% (555/1280)
回答No.1

本来15ケタまでだったはずですが。 Excelの計算の仕様上数値として扱える桁数は有効桁数15ケタになりますので それ以上は扱えません。 その辺はヘルプでexcelの仕様 について確認してください。 ちなみに’を付けた場合は文字列として扱うのでそのまま反映します。

517hama
質問者

お礼

早速ありがとうございます。仕様的に無理なら仕方ないですね。 一つ疑問なのは、書式設定で文字列として指定しても、同じように修正できないのはなぜでしょうか? ありがとうございました。

関連するQ&A

  • csvをエクセルに取り組みたい。初心者

    csvをエクセルに自動マクロ機能で取り込むように設定しました。 12ケタの数字を取り込みたいが9.73E+11となってしまいます。 aのフォルダにa.csv と b.xlsxがあります。 a.csvにダウンロードしたものをb.xlsxに読み込みたいです。 12行のデーターの中から2個のデーターだけを読み込みたいのですが 12ケタの数字もそのままの数字で読み込むことは不可能なのでしょうか? 今まではcsvの表示形式を数字に変換してからブック形式に保存。 そして、テキストにデーターを張り付けてデーターを使用していました。 ブックからデーターをコピーして貼り付けると数字が半角になっていないためできませんでした。 この一連の作業を自動でできたらうれしいかなと思いましたが無理でしょうか? もし、わかる方がおられましたら教えてください。 よろしくお願いします。

  • CSV出力に関して

    パソコンで「CSV出力が完了しました」と表示が出ているのに、データがどこにも反映されていません。 CSV出力した内容を、Excelのシートに移したいのですが、どのような手順で行えば良いのでしょうか?

  • CSVデータの表示がうまくいきません

    17桁の数字を扱う際、 メモ帳では17桁の数字がすべて表示されているのですが、 csvデータに置き換えたとき、 17桁の数字のうち、下4桁辺りがすべて0に変換されてしまいます。 どのようにすれば、 メモ帳のままのデータで表示されるようになるでしょうか?

  • CSVをエクセルの指定の位置に

    CSV出力したデータをエクセルで読み取るときに エクセルの指定のセルに指定の項目が入るようにしたいのですがどうすればいいのでしょうか? CSVデータをそのまま読み込むと項目が並んで表示されてしまいます。 エクセルで作ったフォーマットにCSVデータを反映させて印刷したいのです。

  • CSVファイルをExcelで開くとき

    CSVファイルをExcelで開くと、 12桁以上の数字が値として入っていた場合、 自動で対数表示されてしまいます。 現在、16桁の数字を扱っているのですが、 16桁を対数表示してしまうと、 1の位の数字が必ず0になってしまい、 元データの値を失ってしまいます。 CSVを開くときに、全セル文字列で開くことは出来ませんか?

  • CSVデータの数値の表示

    教えて下さい。 他プログラムからCSVデータ出力したデータを エクセルで表示すると、13桁の数字が9E+12と表示されて しまいます。 セルの書式設定を「数値」に変更すると一時的に数字が表示されるのですが、一度保存して、再度ファイルを開くと戻ってしまいます。 エクセル形式で保存すれば大丈夫なのですが、どうしてもCSVファイルのままで保存したいのです。 CSVデータで13桁の数字を常に表示する方法を教えて下さい。 よろしくお願いします。

  • EXCEL VBAでのCSV出力について

    EXCELに入力されたデータをCSV出力するプログラムを作成しました。データには日付が入っており年月日がYYYY/MM/DDの形で入力されています。これをハンド作業で名前をつけて保存でCSVに出力すると年月日はそのままの状態で保存されますが、VBAで保存するとMM/DD/YYYYの形になってしまいます。この状態で保存されると、次にEXCELで読み出すと年月日が文字列扱いになってしまいます。新しいマクロの記録で行っても結果は同じでした。 VBAで保存する際、YYYY/MM/DDで保存する方法はないでしょうか。 また、MM/DD/YYYYで保存されたCSVを日付としてEXCELに認識させる方法はあるでしょうか。 教えてください。よろしくお願いします。

  • CSV出力

    cakephpにて開発をしています。 CSV出力するためにダイアログを表示したいのですが 表示されず、画面にcsvのデータが表示されてしまいます。 $csv_file = sprintf($this->convert_sjis("テスト_%s.csv"), date("Ymd-hi")); // 適当にファイル名を指定 header ("Content-disposition: attachment; filename=" . $csv_file); header ("Content-type: application/octet-stream; name=" . $csv_file); print($buf); // 出力 readfile($outputFile); phpのソースです。以前はこれでダイアログが表示されたのですが ajaxで呼び出すように修正したあとから画面に出力されるようになってしまいました。なにかご存知でしたらご教示お願いします。

    • ベストアンサー
    • PHP
  • フィルター可視データのCSV出力について

    いつも助けてもらっています。 EXCELのVBAにて、 タイトル等の不要な行を削除した上で、 データが入っている行全てをCSVファイルに出力する マクロを作って使っています。 全件をそのままCSVファイルに出力するのは問題ないのですが、 オートフィルター(手操作)にてヒットしたデータのみを CSVファイルに出力したいです。 ネットでいろいろと調べると、 可視データを他のシートにコピーして・・・やる、 というやり方しか見つかりませんが、 他のシートにコピーしないで行う方法はないですか? (マクロで実行する場合です) もし可能であるならば・・・ コードの記述でなくても、 こんなやり方・・・とか、 どこか参考になる情報でもリンクしてもらえると 助かります。 よろしくお願い致します。

  • エクセルマクロを用いたバーコード出力

    いつもお世話になっています。 エクセルマクロを用いて連番のバーコードを出力しようと考えたのですが、なかなか難しく質問に来ました。 A1~A10にバーコード用の数字(チェックデジット込みの13桁)を準備しました。 これに対応させたバーコードデータを10個作ろうとしたのですが、linkedCellの設定も上手くできませんし、デザインモードの切り替えをしないと表示もできないようで、困っています。 マクロの記録を使っても上手くいかず・・・ アドバイスの程お願いいたします。 できればサンプルマクロをご提示いただくと幸いです。

専門家に質問してみよう