Excelがバーコード番号を壊す理由と、すべての桁を残す方法
Excelは012345678905の先頭のゼロを消し、2010370001130を2.01037E+12と表示します。どちらも、Excelがバーコードを数値として読むために起こります。以下の方法は、Excel、Googleスプレッドシート、LibreOfficeで、追加のソフトなしで使えます。
Excelがバーコード列に起こすこと
- 先頭のゼロが消える。Excelは012345678905を数値として読み、12345678905の11桁にしてしまいます。CSVファイルをダブルクリックで開いたときや、表示形式が「標準」のセルにコードを入力したときに起こります。
- 長いコードが2.01037E+12と表示される。「標準」の表示形式では、12桁以上の数値は指数表記で表示されます(Microsoft:数値の表示形式)。保存するまでは、セルにすべての桁が残っています。
- CSVで保存すると損傷が確定する。CSVファイルにはExcelの表示どおりの値が書き込まれるため、ファイルには2010370001130ではなく2.01037E+12が残ります。7桁が失われます。
- 15桁を超えるコードはすぐに変わる。Excelは有効桁数15桁までしか保持せず、それ以降をゼロにします(Microsoft:先頭のゼロと大きな数値)。EAN-13とUPC-Aは収まりますが、より長いCode 128のコードは収まらないことがあります。
桁を失わずにファイルを開く
- Excel、既存のCSVファイル。空白のブックを開き、Data(データ)からFrom Text/CSV(テキストまたはCSVから)を選びます。ファイルを選び、Data Type Detection(データ型検出)をDo not detect data types(データ型を検出しない)にしてLoad(読み込み)を押します。すべての列がテキストとして、全桁そろって読み込まれます。
- Excel、新しいシート。バーコード列を選び、Format Cells(セルの書式設定)でText(文字列)を選んでから、コードを入力または貼り付けます。先に書式を設定してください。設定前に消えたゼロは戻りません。
- Googleスプレッドシート。列を選び、貼り付ける前に表示形式、数字、書式なしテキストを選びます。ファイル、インポートでCSVを読み込むときは、テキストを数値、日付、数式に変換するのチェックを外します。
- LibreOffice Calc。CSVファイルを開くとText Import(テキストのインポート)画面が出ます。バーコード列をクリックし、Column type(列の種類)をText(テキスト)にしてOKを押します。
ファイルがすでにE+12と表示されている場合
- まず、E+12がどこから来ているかを確認してください。CSVで一度も保存していないブックなら、セルにはすべての桁が残っています。列を選び、Format Cells(セルの書式設定)でNumber(数値)、小数点以下0桁にすると、コード全体が戻ります。すでに2.01037E+12が書き込まれたCSVファイルでは、桁は失われています。同じ操作をしても2010370000000と表示され、これは別のバーコードです。
- 元のシステムからリストを再度書き出してください。レジや店舗システム、または仕入れ先のファイルです。その後、上の方法のどれかで開きます。
- 欠けた先頭のゼロは補えます。桁数が決まっているためです。A列にある12桁のUPC-Aコードなら、
=TEXT(A2,"000000000000")で12345678905が012345678905に戻ります。EAN-13ならゼロを13個にします。
印刷前に確認すること
- 桁数を数える。EAN-13は13桁、UPC-Aは12桁です。
- バーコード列にE+、カンマ、ピリオドがないか探す。バーコードにこれらが含まれることはありません。
- 最後の桁を確認する。最後の桁は他の桁から計算されるチェックデジットです。合わない場合はどこかの桁が変わっており、印刷はできてもスキャナーが読み取りを拒否することがあります。
LabelQuickでファイルをテストする
LabelQuickは、このページを公開しているスタジオLanternbenchが作る無料のラベル拡張機能です。CSVまたはExcelファイルをお使いのパソコン上で読み込み、2.01037E+12の形で保存されたバーコードや誤ったチェックデジットを警告し、印刷前に問題のあるラベルを赤い枠で示します。ファイルはアップロードされません。
Chrome、Edge、Firefox向けの無料拡張機能をインストールしてください。
ファイルが正しくなったら、価格ラベルのガイドに沿ってラベルを印刷してください。