![]() |
←この画像は手元にあったお菓子のパッケージに印刷されていた「バーコード」です。 この「バーコード」の種類が「JANコード」と呼ばれるものです。 「バーコード」のすだれ模様のところに13桁の数字が印刷されていますが、専用のスキャナで読み取るとこの「13桁の数字」が読み取られます。 すなわちこの「13桁の数字」がこの商品の「JANコード」であって、商品個別の番号にあたります。 店舗のPOSシステムでは商品情報の登録内容と照合されて、商品名や価格が紐付けされます。 |
場所 | 内容説明(算出方法等) |
---|---|
13桁整合 (G5セル) |
「JANコード」を入力されたB2セルから転記してきていますが、入力されるコードでは「短縮JAN」が8桁だったり、
「UPCコード」が1桁少ない12桁だったりするので、一旦13桁に桁揃えします。 桁数が足りない部分は前ゼロを付加させます。 |
桁位置 (7行目) |
左からの連番の見出しです。ここからは「JANコード」を文字列処理として1文字ずつ切り出すための位置になります。 「チェックデジット」の計算方法を解説するサイトによっては「JANコード」が数字であるため、右からの連番で説明しているところも多いですが、 Excelでの処理を考えると、これはあくまで「文字列」としての処理だということで、左からの連番にしています。 |
各桁値 (8行目) |
上の「13桁整合」で揃えられた「JANコード」を左から順に1桁ずつ切り出して各列に並べており、
ここでは末桁の「チェックデジット」は除外しています。 |
ウエイト (9行目) |
計算方式名にある「ウエイト1-3」というのは、奇数桁位置には「1」を掛け、偶数桁位置には「3」を掛けるので、
この「1」と「3」を交互に並べている定数行です。 |
乗算値 (10行目) |
各桁位置について「各桁値」と「ウエイト」の掛け算の結果を収容しています。 右端のS10セル(乗算値合計)は各桁位置の乗算値の横合計です。 |
10の剰余 (S11セル) |
「乗算値合計(S10セル)」を10で割った「あまり」です。 |
算出C/D⇒ (C3セル) |
上記「10の剰余(S11セル)」を10から差し引いた値で、
これが「チェックデジット」になります。 |
関数 | 概略説明 |
---|---|
RIGHT関数 |
文字列の末尾(右端)から指定された文字数の文字を返します。引数は以下の通りです。 ① 文字列 ② 文字数 |
MID関数 |
文字列の指定された位置から指定された文字数の文字を返します。引数は以下の通りです。 ① 文字列 ② 開始位置 ③ 文字数 |
SUM関数 |
引数に指定した個々の値、セル参照、セル範囲、またはこれらの組み合わせを加算合計します。 |
MOD関数 |
数値を除数で割ったときの剰余を返します。 戻り値は除数と同じ符号になります。 引数は以下の通りです。 ① 数値 ② 除数 |
=RIGHT("000000"&$B$2,13)