【Excel】エクセルでバーコードフォントを使う方法(Code39・JANコード・QRコード)
Excelで商品コードや管理番号をバーコード化できれば、在庫管理表、棚卸しリスト、発送伝票の作成を効率化できます。
特にCode39は英数字の管理番号に、JANコードは商品識別番号に向いており、用途に応じてバーコードフォントや専用機能を使い分けることが重要です。
一方で、フォントをセルへ適用するだけでは正しく読み取れない形式もあり、開始文字、チェックデジット、桁数などを意識する必要があります。
Code39は開始と終了のアスタリスクを含めた文字列をバーコードフォントへ変換する形式です。
JANコードは原則として13桁の番号とチェックデジットを正しく用意します。
QRコードは通常のバーコードフォントではなく、Excelの画像機能やQRコード作成サービスとの連携が実用的です。
この記事では、Excelでバーコードフォントを使う基本手順から、Code39、JANコード、QRコードの作成方法、読み取りエラーを防ぐ確認方法まで順に解説します。
サンプルデータは1行目が見出しの表として扱い、数式は2行目から入力する前提です。
エクセルでCode39バーコードを表示する方法
それではまず、Code39をExcelのセルへ表示する方法について解説していきます。
| A | B | C |
|---|---|---|
| 1 | 管理番号 | Code39用文字列 |
| 2 | AB-1001 | *AB-1001* |
| 3 | AB-1002 | *AB-1002* |
Code39対応フォントの準備
Code39を表示するには、最初にWindowsへCode39対応のバーコードフォントをインストールします。
フォントファイルを右クリックしてインストールを選び、Excelをいったん終了してから起動し直すと、フォント一覧から選択できるようになります。
フォント名は配布元によって異なりますが、Code39、Free 3 of 9、IDAutomationHC39Mなど、Code39であることが分かる名称を確認しましょう。
バーコードフォントは表示用の書体であり、文字列の規則まで自動補正するものではありません。
そのため、導入後はテスト用の短い文字列を入力し、バーコードリーダーで読めるかを必ず確認することが大切です。

無料フォントを利用する場合は、商用利用、再配布、社内利用に関するライセンス条件も確認してください。
取引先へExcelファイルを渡す場合、相手のパソコンにも同じフォントが必要になる点は見落としやすい注意点です。
【操作のポイント】フォントのインストール後は、Excelを再起動してフォント一覧へ反映させます。
開始文字と終了文字の入力
Code39では、データの前後に開始記号と終了記号を付ける必要があります。
たとえば管理番号がAB-1001なら、セルに入力する文字列は*AB-1001*です。
この前後の記号は、読み取り機器へバーコードの開始位置と終了位置を伝えるために使われます。
ExcelのB2に元データがある場合、C2へ次の数式を入力すると、Code39用の文字列を作成できます。
=”*”&B2&”*”
数式内の&は文字列を連結する演算子です。
最初の”*”で開始記号を追加し、B2の値を中央へ配置し、最後の”*”で終了記号を追加します。
数式をC2へ入力したら、セル右下のフィルハンドルを下方向へドラッグして、3行目以降へオートフィルしましょう。

元データの列とバーコード用文字列の列を分けると、番号を修正したときのミスを減らせます。
【操作のポイント】Code39用の記号は元データへ直接追加せず、別列で数式により作ると管理しやすくなります。
セルへのフォント適用と読取確認
C列のCode39用文字列を選択し、ホームタブのフォント一覧からインストールしたCode39フォントを選びます。
文字列が縦線の集合に変われば、表示自体は成功です。
バーコードの高さが足りないとスキャナーが読み取りにくくなるため、行の高さは30ポイント程度以上を目安に広げるとよいでしょう。
横幅はフォントサイズで調整できますが、極端に縮小すると細い線同士がつぶれます。
印刷して使うなら、画面上で見えることではなく、実機のバーコードリーダーで安定して読めることが完成条件です。
紙へ印刷する前に、100パーセント表示で確認し、プリンターの拡大縮小設定も確認しましょう。
Code39で扱いやすい文字は、大文字の英字、数字、半角スペース、一部の記号です。
小文字、日本語、機種依存文字は利用できないことがあるため、管理番号は半角英数字を基本にするのが安全です。
【操作のポイント】フォントサイズを変えた後は、印刷物を実際にスキャンして判定します。
JANコードの桁数とチェックデジットの作成
続いては、JANコードをExcelで準備する際の桁数とチェックデジットを確認していきます。
| A | B | C |
|---|---|---|
| 1 | 本体12桁 | チェックデジット |
| 2 | 490123456789 | 4 |
| 3 | 490123456780 | 1 |
JANコードの基本構造

JANコードは、日本で流通する商品に用いられるバーコード規格で、一般的な標準タイプは13桁です。
13桁のうち最後の1桁はチェックデジットであり、前12桁の数字から計算します。
先頭からの番号には事業者や商品を識別する情報が含まれますが、任意の数字を作って実在商品のJANコードとして使用してはいけません。
社内管理だけが目的なら、独自の管理番号にはCode39などを使い、JANコードは正式に割り当てられた番号に限定する考え方が安全です。
Excel上でJANコードを表示する際は、セルの表示形式を文字列にしておくと、先頭の0が消えるトラブルを防げます。
番号を入力する前に対象列を選択し、ホームタブの表示形式から文字列を指定しておきましょう。
【操作のポイント】JANコードの先頭ゼロを保持したい列は、入力前に文字列形式へ設定します。
チェックデジットを求める数式
JANコードのチェックデジットは、右から数えた位置によって重みを掛け、合計を10の倍数へ調整して求めます。
12桁の本体番号がB2に文字列として入っている場合、Microsoft 365やExcel 2021以降では次の数式を使えます。
=MOD(10-MOD(SUMPRODUCT(MID(B2,SEQUENCE(12),1)*IF(MOD(SEQUENCE(12),2)=1,1,3)),10),10)
MID関数はB2から1文字ずつ数字を取り出します。
SEQUENCE関数は1から12までの位置番号を作り、IF関数は奇数位置へ1、偶数位置へ3という重みを設定します。
SUMPRODUCT関数で数字と重みを掛けた合計を出し、MOD関数で次の10の倍数までの差を計算する仕組みです。

Excelのバージョンが古くSEQUENCE関数が使えない場合は、補助列を使って各桁を分ける方法が分かりやすいでしょう。
数式の結果が10になった場合も、MOD関数によってチェックデジットは0として返されます。
【操作のポイント】数式を入力したら、既知のJANコードと照合して計算結果を一度検証します。
JANコード用フォントへの変換
チェックデジットを計算できたら、本体番号と結果を連結して13桁の文字列を作ります。
D2へ次の数式を入力すると、B2の12桁とC2のチェックデジットをつなげられます。
=B2&C2
ただし、JANコード用フォントには独自のエンコード規則があるものが多く、13桁の数字をそのままフォントへ設定するだけでは表示できない場合があります。
専用フォントの配布元が提供する変換関数、アドイン、エンコーダーの説明書を優先してください。
一般的なCode39フォントへ13桁の数字を適用しても、見た目が似た縦線になるだけで、JANコード規格にはなりません。
JANコードは規格に沿ったエンコード処理と、静かな余白であるクワイエットゾーンの確保が必要です。
【操作のポイント】JANコード対応をうたうフォントは、対応桁数と変換方法を必ず説明書で確認します。
QRコードをExcelで作成して配置する方法
続いては、バーコードフォントでは対応しにくいQRコードをExcelへ配置する方法を確認していきます。
| A | B | C |
|---|---|---|
| 1 | 商品名 | リンク先URL |
| 2 | サンプル商品 | https://example.com/item-a |
QRコードとバーコードフォントの違い
QRコードは二次元コードであり、縦方向と横方向の両方に情報を記録します。
一次元バーコードであるCode39やJANコードより、多くの文字数、URL、日本語を扱いやすい特徴があります。
その一方で、一般的なバーコードフォントのように、文字の並びを別の書体で表示するだけでは正しいQRコードになりません。
QRコードはデータ量、誤り訂正レベル、余白、セルの大きさを考慮して生成する必要があります。
ExcelではQRコード作成アドイン、Office Scripts、VBA、外部のQRコード生成サービスなどを利用し、画像としてセルの近くへ配置する方法が実務的です。
QRコードに入れるURLは、途中で改行や余計な空白が入らないようにします。
URLを短くすると、QRコードのマス目が細かくなりすぎず、スマートフォンで読み取りやすくなります。
【操作のポイント】QRコードはフォント変換ではなく、正しい形式で生成した画像を配置する方法が基本です。
挿入タブからQRコード画像を配置する操作
ここでは、作成済みのQRコード画像をExcelシートへ挿入し、セルに合わせて管理する操作を説明します。
Excelの挿入タブを開き、画像、次にこのデバイスを選択して、あらかじめ保存したQRコード画像を指定します。
画像を挿入した後は、Altキーを押しながらドラッグすると、セルの枠線へ合わせて大きさを調整しやすくなります。
配置後に画像を右クリックし、サイズとプロパティからセルに合わせて移動やサイズ変更をする設定を選ぶと、行列の幅を変えた際も位置がずれにくくなります。
QRコードの周囲には白い余白を残し、他の罫線や文字を接触させないことが読み取り精度につながります。
【操作のポイント】画像をセルに合わせて移動やサイズ変更する設定にすると、表の並べ替え時にも管理しやすくなります。
URLと画像の対応を確認する方法
QRコードを大量に扱う場合、URLの取り違えを防ぐために、元URL列、画像ファイル名、確認担当者の列を分けておくと便利です。
たとえばB列にURL、C列に画像ファイル名、D列にスマートフォンで読み取った確認結果を記録します。
画像を見ただけでURLの内容を判断することは難しいため、生成日時や対象商品名も表へ残しておくと追跡しやすくなります。
QRコードはスマートフォンで一度読み取れたとしても、印刷サイズや照明条件が変わると読めなくなることがあります。
画面上の確認、通常印刷での確認、実際に掲示する用紙サイズでの確認という3段階で試すと安心です。
画像のファイル名は、商品コードと同じ文字列にそろえると照合作業が速くなります。
例として、商品コードAB-1001ならQR_AB-1001.pngのように保存します。
【操作のポイント】QRコードは生成直後と印刷後の両方で、目的のURLへ遷移するか確認します。
バーコードフォントを使うExcel表の整え方
続いては、バーコードを業務表で見やすく使うためのセル設定と印刷設定を確認していきます。
| A | B | C |
|---|---|---|
| 1 | 商品名 | バーコード |
| 2 | 部品A | *AB-1001* |
元データと表示用データの分離
バーコードを運用する表では、バーコードとして見せる値と、担当者が読める値を別々の列へ置くことが基本です。
バーコード列だけを作ると、フォント未導入のパソコンでは内容を確認できない可能性があります。
商品コード、商品名、バーコード用文字列を並べることで、目視確認とスキャン処理の両方へ対応できます。
見える番号を残しておくことは、読取不良が起きたときの手入力や原因調査にも役立ちます。
フィルターや並べ替えを行う場合は、画像やバーコードを含む表全体を範囲指定し、行単位でデータを動かすことを意識しましょう。
【操作のポイント】人が読む番号列と、機器が読むバーコード列を分離して作成します。
行の高さと余白の調整
一次元バーコードは、横方向の線幅だけでなく、縦方向の高さも読み取りやすさに影響します。
セル内でバーコードが上下に詰まって見える場合は、行の高さを広げ、フォントサイズを少し上げる方法が有効です。
また、バーコードの左右には余白を確保します。
隣接するセルの罫線、商品名、別のバーコードが近すぎると、読み取り機器が開始位置を認識しにくくなるかもしれません。
推奨の考え方は、バーコードの周囲へ印刷時にも白い余白を残すことです。
セルの横幅を狭くしすぎず、列幅を余裕を持って設定しましょう。
セル内の中央揃えは見栄えを整えますが、バーコードの規格によっては左右の余白を削らない配置が優先です。
【操作のポイント】行高、列幅、周囲の白い余白を調整してから、実際のスキャナーで確認します。
印刷範囲と拡大縮小の確認
Excelの改ページプレビューや印刷画面では、意図せずバーコードが縮小されることがあります。
特に1ページに収める設定を選ぶと、細いバーの幅まで縮小され、読取精度が下がるケースがあります。
ページレイアウトタブで印刷範囲を指定し、横幅を必要以上に1ページへ収めないよう調整しましょう。
印刷プレビューでは、バーコードが途中で切れていないか、隣のセルに重なっていないか、余白が残っているかを確認します。
プリンターのドライバー側にある拡大縮小設定も、Excelの設定とは別に影響する場合があります。
最終的には、実際に使う用紙、プリンター、リーダーの組み合わせでテストすることが確実です。
【操作のポイント】画面の表示倍率ではなく、印刷後の用紙を読み取って完成を判定します。
バーコードが読み取れない場合の確認項目
続いては、Excelで作成したバーコードが読み取れない場合に確認したい項目を解説していきます。
| A | B | C |
|---|---|---|
| 1 | 確認項目 | 確認結果 |
| 2 | フォント形式 | Code39対応 |
データ形式と禁止文字の確認
最初に、バーコードの種類と入力文字が一致しているかを確認します。
Code39へ小文字や日本語を入れた場合、表示はされても正しく符号化されないことがあります。
JANコードなら12桁の本体番号と1桁のチェックデジットで13桁になっているかを確認します。
セルを数値形式で扱っていると、先頭の0が消えたり、長い数字が指数表示になったりすることもあります。
バーコードの元になる番号は、文字列形式で保存し、桁数をLEN関数で点検すると安全です。
=LEN(B2)
この数式はB2の文字数を返します。
JANコードの完成済み13桁データなら、結果が13であることを確認できます。
【操作のポイント】読み取れないときは、まず文字数、使用文字、開始記号と終了記号を確認します。
フォントとスキャナー設定の確認
同じCode39でも、チェック文字を含む種類と含まない種類があり、スキャナー側の設定と合わないことがあります。
読み取り機器がCode39を無効にしている場合もあるため、機器の設定マニュアルで対応するシンボル体系を確認してください。
Excel上では正常に見えるのに印刷物だけ読めない場合、フォントの埋め込み不足、プリンターの解像度、拡大縮小が原因となることがあります。
別のバーコードリーダーやスマートフォンアプリで試すと、データ側と機器側のどちらに原因があるかを切り分けやすくなります。
ただし、スマートフォンが読めることと、業務用スキャナーで安定して読めることは同じではありません。
【操作のポイント】別の読み取り機器で試し、フォント、印刷、スキャナー設定を順に切り分けます。
印刷品質とセル罫線の確認
低解像度の印刷、にじみ、かすれ、トナー不足は、細いバーの判別を難しくします。
また、セルの罫線がバーコードへ重なったり、周囲の文字が接近しすぎたりすると、読み取りエラーにつながります。
バーコード列には不要な罫線を設定せず、白背景と黒いバーのコントラストを保ちましょう。
カラー印刷の場合でも、バーコード部分を薄い色にしないことが大切です。
見た目を整えるための装飾より、規格に必要な余白とコントラストを優先することが安定した運用につながります。
読取エラーが続く場合は、フォントサイズを上げる、行高を広げる、左右の余白を増やすという順に調整すると原因を探りやすくなります。
【操作のポイント】罫線や背景色を外したテスト印刷を作り、バーコード単体で読めるか確認します。
まとめ Excelでバーコードフォントを使う方法
Excelでバーコードフォントを使う場合は、用途に合った規格を選び、元データと表示用データを分けて管理することが基本です。
Code39は社内の管理番号などへ使いやすく、文字列の前後へ開始記号と終了記号を追加してから対応フォントを適用します。
JANコードは13桁の構造とチェックデジットが重要であり、正規の番号と規格対応の変換方法を使う必要があります。
QRコードは通常のバーコードフォントだけで作るものではなく、正しい生成処理を行った画像をExcelへ配置する方法が扱いやすいでしょう。
作成後は、画面上の見た目だけで判断せず、実際に印刷し、使用予定のバーコードリーダーやスマートフォンで読み取ることが大切です。
データ形式、桁数、フォント、行高、余白、印刷倍率を順に確認すれば、Excelの在庫管理表や商品一覧でも安定してバーコードを活用できます。