特定の方法で数値をフォーマットしているcsvファイル内のExcelに本当の問題があり、どうしてもExcelにデータを正しく表示させることができないようです。
「製品リファレンス」という列があると想像してください。その列には、次のタイプのIDが多数あります。
Excelファイルを開くと、これらの数値は次のようにフォーマットされます。
これは完全に間違っています。列を強調表示してテキストとして書式設定すると、数値の先頭にある以前の0が返されません。
これを解決するために、私はcsvファイルを最初にテキストファイルにしてからExcelにインポートし、インポート内でテキスト形式にすることで数値をフォーマットしないように特に指示しましたが、閉じるときに数値を誤ってフォーマットしますcsvはタイプを定義できないため、Excelはファイルを純粋なゴミとして自動保存します。
誰かがこれを回避する方法を見つけましたか?
おかげで、
テキストであることをcsvファイルで指定する必要があります。これを行うには、番号を引用符で囲み、前に等号を付けます。次に例を示します。
="001145",="55666",="02133"
これを行う最も簡単な方法は、,
でfind-replaceを",="
に置き換え、行末(これにはNotepad ++などの高度なエディターを使用する必要がある場合があります)を"\r\n="
に置き換え、ファイルの開始と終了を手動で行うことです。
OracleからOpenOfficeをインストールし、OpenOfficeのCSV形式で同じように実行します。
Excel 2010を搭載したWindows 7 Proでこの問題が発生しました。以前は、Outlookの連絡先をExcelにコピーし、CSVとして保存し、Gmailにインポートして、Android(ゼロと+記号)。
次に、先頭のゼロを維持するセルをクリックします。右クリック> [セルの書式設定]> [カスタム]> [0]>次のようなセルに必要な合計数を入力します。00001234が必要な場合は、0000000をゼロの数、それが行うように言っているすべてはセルに合計8を置くことです、私はすでに1234を持っているので、それは4つのより多くの先行ゼロとの違いを補います。
私はスプレッドシートをインポートするためにこれを毎日使用しています。
データを含むセルを右クリックし、セルの書式設定...メニューエントリをクリックします。次に、最初のタブ(「番号」)で、カテゴリをGeneralからTextに変更します。これにより、Excelがこれらのセルを数値として自動的にフォーマットし、先行ゼロを削除しなくなります(数値分析のコンテキストでは意味がありませんが、製品IDを扱う場合は非常に意味があります)。
データをインポートして数値として解析する場合は、データインポートウィザードを使用して、各列タイプを「一般」ではなく「テキスト」に設定する必要があります。次に、セルで同じことを行い、Excelブックを保存します。
この質問からの@Jonの回答に追加するために、インポートすると、先頭のゼロが失われるか、長い数字が科学表記法に変換されるか、またはその両方になる、先行ゼロとより長い数値を持ついくつかの列を含むCSVファイルがありました。
私が修正できる唯一の方法は、次の手順を使用して、最初に空のシートのすべてのセルをText
にフォーマットすることでした。
すべてのシートセルをText
にフォーマットした後、次の手順でCSVをインポートできます。
Data
]タブで、[From Text
]をクリックします。.txt
または.csv
ファイルを選択してImport
をクリックします
Delimited
を選択し、[次へ]をクリックします。
Comma
を選択しました)を選択し、適用されない他の区切り文字を選択解除してから、[Next
]をクリックします。Text
としてフォーマットする必要がある列を見つけます。列をクリックして(暗くなるはずです)、オプションリストでText
を選択します。正しくフォーマットする必要があるすべての列を選択してください。Finish
をクリックします。書式設定した列にスクロールすると、すべての先行ゼロが保持されており、数値の長い文字列が科学表記ではないことがわかります。お役に立てば幸いです。
データがSQLを使用して生成された場合。切り捨てられないようにする必要のある数値にタブ文字を追加すると機能するはずです。
-- Oracle PL/SQL
select "01234567890123456" || chr(9) from dual;