回答:
Excelには、セル内のデータに関して、2つの異なる無関係な概念があります。それは、未処理/保存された値と表示値です。
「未加工」または保存された値は、フォーマットされていない表現の実際のデータです。生データのタイプには、数値、テキスト、日付などがあります。
「表示」値は、データのフォーマット方法です。Excel GUIを使用すると、生の値ではなく表示値が表示されます。
問題は、CSVにエクスポートするとき、生の値を取り、それを表示値ではなくエクスポートすることです。したがって、[セルの書式設定]ダイアログを使用して先行ゼロを含むようにデータをフォーマットしても、基になる値に先行ゼロが含まれていない場合、エクスポートも行われません。
すべてのデータを(Excelスプレッドシートで)テキストとしてフォーマットし、必要に応じて先行ゼロを追加する必要があります。これにより、未加工の値に先行ゼロがある(ない)と思わせるような表示値を排除できます。
ゼロはセルの内容の一部としては存在せず、書式設定のみであるため、テキストとして書式設定しても取得されません。次の列で数式を使用してみてください。たとえば、郵便番号が5桁(?)で、A2にエントリがある場合、この数式をB2に入力します。
=TEXT(A2,"00000")
数式を列にコピーします
その結果はテキスト値です(おそらく実際の先行ゼロが付きます)。この値を別の列に入れたら、元の列に「値を貼り付け」をコピーして実行し、基礎となるすべてのデータをゼロで埋められたデータに置き換えることができます。次に、余分な列を削除します。
セルにはテキストではなく数値が含まれています。数値02010は2010と同じです。テキストとしてフォーマットすると、02010ではなく2010の通常のテキスト表現になります。
先行ゼロを保持するには、数値ではなく文字列としてデータを入力します。たとえば、値として「02010」を入力します。
すべての数値が同じ長さ(たとえば、5桁)であると仮定して、先行ゼロを単純に表示するには、カスタム形式を使用します。カスタムFOrlistから0を選択し、それを00000に変更します。すべての数値は、先行ゼロ付きの5桁で表示されます。ただし、このデータをCSVファイルに保存する場合、先頭のゼロはありません。それらを保持する唯一の方法は、データを文字列として入力することです。
私はExcelを使用してから長い年月が経過しましたが、常に先頭のゼロの前に 'を付けると、Excelは数値として解釈する代わりに文字列として扱います。