パスワードを忘れた? アカウント作成
この議論は賞味期限が切れたので、アーカイブ化されています。 新たにコメントを付けることはできません。

「ネ申Excel」はなぜ問題なのか」記事へのコメント

  • なぜCSV中の数字だけの項目を、勝手に数値として解釈するのか・・・。
    具体的に言うと、電話番号の頭の0が落ちたりする。

    ダブルクォーテーションで括ったり、普通に考えられることは一通りやりましたよ。

    • by taka2 (14791) on 2013年10月23日 18時38分 (#2482629) ホームページ 日記

      ExcelでCSVを使う場合、文字コードもネックですな。UTF-8のCSVの場合、
      直接開く→Shift_JISとして読み込んで文字化け
      テキストファイルウィザードで開く→UTF-8として読み込み可能
      なんですが、テキストファイルウィザードで開いたあと、そこで上書き保存すると、Shift_JISなCSVに書き換えてしまいやがります。

      私は、もうCSVをExcelからファイル経由で扱うのはあきらめて、クリップボードを通してタブ区切りテストを受け渡し [srad.jp]することにしてます。これならUTF-8でも問題なし。
      テキストエディタとしては、MIFESが便利。CSVモードで開いたあと、行を丸ごとコピペする場合、Excel同様タブ区切りテキストとして処理されるので、「MIFESで、CSVモードでCSVを開き、全データをクリップボードにコピー」→「Excelでペースト」すると簡単です。

      「数字だけの項目を、勝手に数値として解釈」って問題はクリップボード経由でも解消されないのですが、そういった問題が出た場合、ペースト先のセルを予め書式設定で文字列にしておけば大丈夫です。
      「ペーストする」→「電話番号などで0が消えてることに気づく」→「列をまとめて書式設定、文字列に」→「もう一度ペースト」
      ということで、テキストファイルウィザードと違って試行錯誤が簡単です。
      テキストファイルウィザードで書式文字列指定漏れがあったら、また最初から全部やり直しですから…

      テキストファイルウィザードも、読み込み設定を覚えてくれたら、まだマシだと思うんですけどね。
      住所録だとか名刺管理だとかのDB的ソフトのCSV入力機能の場合、入力フォーマットを登録しておけるのが多い。それなら、テキストファイルウィザード相当の設定を行うのは最初の一回だけですみます。
      Excelはその汎用性ゆえに仕方ないのかもしれないですが、毎回イチイチ指定しなきゃいけないのは面倒すぎます…

      親コメント
      • by Anonymous Coward

        ExcelでCSVを使う場合、文字コードもネックですな。UTF-8のCSVの場合、
        直接開く→Shift_JISとして読み込んで文字化け

        これ BOM がないと化けるのでBOMをつければいいだけですよ

        UTF-8にBOMなんてただのゴミなんですけど

※ただしPHPを除く -- あるAdmin

処理中...