QR WORLD
QR WORLD

JANコードのチェックデジットとは?計算方法やツールを解説!

カバー写真
「JANコードのチェックデジット」とは、商品のバーコードに含まれる数字の正確性を確認するための仕組みです。 特に、バーコードスキャンやシステムでのエラー防止に欠かせない役割を果たします。 本記事では、チェックデジットの基本的な仕組みから、具体的な計算方法、さらに手軽に使える計算ツールについて分かりやすく解説します。 チェックデジットの計算が心配な方や、仕組みを詳しく知りたい方は必見です!

JANコードのチェックデジットとは?

JANコードのチェックデジットとは標準タイプの場合13桁、短縮タイプの場合8桁の末尾の一桁のことで、バーコードリーダーにより正しく読み取れているかを確認するためのものです。

同じバーコードのUPCITFでもチェックデジットは採用されています。

チェックデジットが必要であるため実際に格納できる数字は標準タイプで12桁、短縮タイプで7桁です。

チェックデジット

JANコードは、商品を一意に識別するために使用されるバーコードの一種で、主に日本で利用されています。

JANコード自体についての解説記事はこちらから

チェックデジットの判定の流れ

チェックデジットは読み取った際に内容に誤りが無いかを確認するものです。

  1. 読み取ったチェックデジット
  2. それ以外の部分を計算した結果(後述の計算式で行う)

それぞれを比較して一致した場合は読み取りが正しかったと判定されます。

JANコードのチェックデジットを用いた判定の流れ

JANコードのチェックデジットの計算方法

モジュラス10/3ウェイトとは?

チェックデジットの計算には「モジュラス10/3ウェイト」という方法が使われます。

これは、各桁の数字に特定の重みをかけ、その合計からチェックデジットを導き出す手法です。

この計算方法は以下のようなステップで行われます:

  1. 各桁に3または1の重みを交互に掛ける。
  2. その結果をすべて合計する。
  3. 合計を10で割った余りを求める。
  4. 余りが0の場合は0、そうでない場合は10からその余りを引く。

標準タイプ13桁の場合

標準的な13桁のJANコードの場合、以下の手順で計算します:

例:490123456789

  1. チェックデジットを除いた12桁を用意する:490123456789
  2. 重みを掛ける(チェックデジットを含め、右から数えてに偶数には3、奇数には1を掛ける):
    1. 4×1 + 9×3 + 0×1 + 1×3 + 2×1 + 3×3 + 4×1 + 5×3 + 6×1 + 7×3 + 8×1 + 9×3
    2. 計算結果:4 + 27 + 0 + 3 + 2 + 9 + 4 + 15 + 6 + 21 + 8 + 27 = 126
  3. 合計126を10で割った余りを求める:126 % 10 = 6
  4. 10から余りを引く:10 - 6 = 4

この場合、チェックデジットは「4」となります。

計算例13桁の場合

短縮タイプ8桁の場合

短縮型8桁のJANコードの場合も基本は同じです。

例:4901234

  1. チェックデジットを除いた7桁を用意する:4901234
  2. 重みを掛ける(チェックデジットを含め、右から数えてに偶数には3、奇数には1を掛ける):
    1. 4×3 + 9×1 + 0×3 + 1×1 + 2×3 + 3×1 + 4×3
    2. 計算結果:12 + 9 + 0 + 1 + 6 + 3 + 12 = 43
  3. 合計43を10で割った余りを求める:43 % 10 = 3
  4. 10から余りを引く:10 - 3 = 7

この場合、チェックデジットは「7」となります。

計算例8桁の場合

おすすめのJANコードのチェックデジットの計算ツール

ご紹介した通りJANコードのチェックデジットの計算は手計算で行うとステップが多いので間違ってしまう可能性があります。

そこでおすすめなのが無料のオンラインツールのQR TOOLです。

JANコードのチェックデジットを計算するツールが無料・オンライン上で手軽に利用できます。

利用方法

  1. JANコードのチェックデジットを計算するツールへアクセスしてください
  2. 入力タイプを「キーボード」もしくは「Excel・CSV」から選択してチェックデジットを除いた12桁もしくは7桁を入力してください。(複数一括指定可能)
  3. チェックデジットが自動で計算されます。計算が完了した一覧はCSVでダウンロード可能です
JANコードのチェックデジットを計算するツール


エクセルやスプレッドシートでチェックデジットを計算・確認する方法

JANコードを大量に扱う場合、手計算では時間もかかり、ミスの原因にもなります。そんな時はエクセルやスプレッドシートの関数を使えば、チェックデジットの計算や検証を自動化できて非常に便利です。

ここでは、代表的な2つのケースに分けて、具体的な計算式をご紹介します。

【重要】Excelでのセルの書式設定の注意点

数式を入力する前に、JANコードを入力する列(例:A列)を選択し、セルの書式設定を必ず「文字列」に変更してください。

※「標準」設定のままだと、「0」で始まるコードの「0」が消えたり、桁数の多い数字が自動的に変換されてしまい、正しく計算できません。

[セルを右クリック > セルの書式設定]

セルの書式設定

[文字列を選択]

書式オプションで文字列を選択

【重要】Googleスプレッドシートでの注意点

Excelと同様に、Googleスプレッドシートでも事前の「書式設定」が非常に重要です。

JANコードを入力する列(例:A列)を選択した状態で、メニューから以下の設定を行ってください。

  1. 「表示形式」をクリック
  2. 「数字」にカーソルを合わせる
  3. 「書式なしテキスト」を選択

以下の関数はエクセル・スプレッドシートの両方で使用することができます。

ケース1:12桁のコードからチェックデジットを計算する

JANコードの元となる12桁の数字から、13桁目となるチェックデジットを算出します。

手順

  1. セルA1に、チェックデジットを除いた12桁のJANコードを入力します。
  2. チェックデジットを表示させたいセル(例:B1)に、以下の数式をコピー&ペーストします。

=MOD(10-MOD(SUMPRODUCT(--(MID(A1,{1,3,5,7,9,11},1))) + SUMPRODUCT(--(MID(A1,{2,4,6,8,10,12},1)))*3,10),10)

これで、B1セルに正しいチェックデジットが表示されます。あとは数式を下の行にドラッグすれば、A列に入力したすべてのコードのチェックデジットを一括で計算できます。

チェックデジットの関数の結果

心配でしたらこちらのウェブツールも利用して計算結果が合っているか確認してみてください。

ケース2:13桁のコード全体の正しさを確認する

すでにある13桁のJANコードのチェックデジットが正しいかどうかを検証します。

手順

  1. セルA1に、確認したい13桁のJANコードを入力します。
  2. 結果を表示させたいセル(例:B1)に、以下の数式をコピー&ペーストします。

=IF(MOD(10-MOD(SUMPRODUCT(--(MID(A1,{1,3,5,7,9,11},1))) + SUMPRODUCT(--(MID(A1,{2,4,6,8,10,12},1)))*3,10),10)=--RIGHT(A1,1),"✔️ 正しい","❌ 誤り")

コードに誤りがなければ「✔️ 正しい」、間違っていれば「❌ 誤り」と表示されます。この数式を使えば、大量のJANコードの正確性を簡単にチェックできます。

ケース2の計算例

まとめ

JANコードのチェックデジットは、商品の識別やエラー防止において非常に重要な役割を果たします。

その計算方法であるモジュラス10/3ウェイトは、原理を理解すれば手動でも簡単に計算可能です。

さらに、計算ツールを活用すれば、効率よく正確性を確保できます。

計算ツールはQR TOOLがおすすめです。

ぜひ本記事を参考に、チェックデジットについての理解を深め、実務に役立ててください!

JANコードシンボルを作成するにはこちらのオンラインツールをご利用ください。

よくある質問(Q&A)

Q1. チェックデジットの計算が合いません。どこが間違っている可能性がありますか?

  • A. 最も多い間違いは、数字を数える方向です。チェックデジットの計算では、「右端から」数えて奇数・偶数を判断します。また、短縮タイプ(8桁)を13桁の計算式に当てはめていないかもご確認ください。まずは自動計算ツールで正しい答えを確認することをおすすめします。

Q2. ITFコードのチェックデジットも同じ計算方法ですか?

  • A. はい、ITFコード(標準バージョン/GTIN-14)のチェックデジットも、JANコードと同じ「モジュラス10/3ウェイト」という計算方法が用いられています。ただし桁数が異なる点にご注意ください。

Q3. なぜこんな面倒な計算が必要なのですか?

  • A. 人間が手でJANコードをシステムに入力する際や、バーコードスキャナがかすれたバーコードを読み取る際に、1桁でも間違えると全く別の商品として認識されてしまいます。チェックデジットは、こうした「読み間違い」や「入力間違い」をシステムが自動で検知するために不可欠な、シンプルな仕組みなのです。
QR WORLDロゴ

QR WORLD(QRワールド) 編集部

QRコード・バーコードの生成・読み取りシステムを開発してきた経験からお役立ち情報を発信しています。

QRコード作成

無料