Excelからバーコード(CODE128)を一括作成する方法!ラベル印刷も!

Excelからバーコード(CODE128)を一括作成する方法!ラベル印刷も!
Excelでバーコード(CODE128)を作成したいときはないでしょうか。

けど、そんな中で悩むことは、

・Excelの管理番号からCODE128を一括で作りたい
・桁数が多くてバーコードが長くなり、ラベルに収まらない
・作ったバーコードをラベルにして印刷したい

ですね。

そんなときに使えるのが、エク短ツールズの「CODE128作成」です。

Excelの一覧を貼り付けるだけで、CODE128バーコードを一括作成でき、商品名を別欄に持つ一覧からでもラベル印刷までブラウザだけで完結します。

インストール不要・登録不要・データはブラウザ内で処理されるので、社外に出せない管理番号でも安心して使えます。

今回はそんなお悩みを解決する、

・CODE128の特徴と使える文字
・Excelの一覧からCODE128を一括作成する手順
・商品名を別欄に持つ一覧の取り込み方
・PNG・SVG・ZIPでの保存
・ラベルPDFの作成と印刷のコツ
・CODE39との使い分け

についてまとめます!

完成イメージ

Excelの一覧を取り込んで「画像を作成」を押すだけで、一覧と同じ順番でCODE128が並びます。

一覧から一括作成したCODE128バーコード

さらにPNG一括保存(ZIP)でまとめて受け取れます。ファイル名は「番号-品名.png」で入るので、そのまま管理できます。

ZIPで一括ダウンロードしたファイル一覧

そしてラベル用のPDFまで作れるので、印刷して貼るだけの状態になります。

ラベルPDFのプレビュー

実際に印刷したときのイメージはこちらです。

出力したラベルPDFの印刷イメージ

エク短ツールズ「CODE128作成」はこちら

POINT
・Excelの一覧を貼り付けるだけでCODE128を一括作成できます
・半角英数字と記号(フルASCII)が使え、同じ内容ならCODE39より短くなります
・チェックデジットは自動で付くので、入力は不要です
・PNG/SVG/ZIP一括DL、ラベルPDF・印刷までブラウザで完結します

CODE128とは

CODE128は、半角の英数字と記号(フルASCII)を表せる、密度の高いバーコードです。

同じ内容でもCODE39より短く収まるため、桁数の多い管理番号やラベルが小さい場面に向いています。

項目 内容
使える文字 半角英数字・記号(フルASCII 128文字)
使えない文字 日本語・全角・制御文字
長さ 1〜80文字(ツールの上限)
チェックデジット 必須。ただし自動計算されるので入力不要
密度 高い。数字だけなら特に短い(サブセットC)
主な用途 物流・出荷伝票・FA・医療・図書管理

CODE39とCODE128の使い分け

観点 CODE39 CODE128
使える文字 大文字英数字+一部記号 半角英数字+記号(フルASCII)
小文字 不可 可
バーコードの長さ 長くなりやすい 短く収まる
チェックデジット 任意 必須(自動)
向いている場面 英字混じりの社内番号・資産管理 物流・出荷・桁数が多い番号

ラベルが小さい/桁数が多いならCODE128、社内ルールでCODE39と決まっているならCODE39、という選び方が実務的です。

従来のVBA(バーコードコントロール)との違い

項目 VBA(バーコードコントロール) エク短ツールズ
準備 Access由来のライブラリが必要な場合がある ブラウザだけ(インストール不要)
文字の検証 自分でチェックする必要がある 自動で検証
ラベル印刷 自分でレイアウトを組む ラベルPDFを自動作成
ブックへの影響 OLEオブジェクトで重くなる ブックはそのまま(Excelを汚さない)
向いている場面 Excel内で完結させたい 大量作成・ラベル印刷

使い方①:Excelの一覧からCODE128を一括作成する

STEP1. 一覧を取り込む

まずはサンプルのExcelを用意します(この記事のサンプルは20件・4列です)。

入力サンプルのExcel(管理番号・品名・価格・出荷先)
管理番号 品名 価格 出荷先
ORD-20261020-001 出荷品目01 1300 東京01
ORD-20261020-002 出荷品目02 1620 東京02
ORD-20261020-003 出荷品目03 1940 東京03
ORD-20261020-004 出荷品目04 2260 東京04

ツールの「一覧を取り込む」で、入力方法を選びます。

入力方法 使いどころ
Excel表から貼り付け Excelの表をそのまま貼りたいとき
XLSX・CSVファイル ファイルをそのまま読み込みたいとき(列の割り当てが一番ラク)
一覧を取り込む画面(XLSX・CSVファイルを選択)

サンプルExcelのA列は文字列書式にしてあるので、先頭0のある管理番号でも消えません。
そのままコピーして貼り付けるだけでいいのでカンタンですね。

上限は100件・30列、1コード80文字まで。ラベルは合計500枚・50ページまで作成できます。

STEP2. 列を割り当てる

CODE128は商品名を別の列から持ってこられるのが便利なところです。

設定 指定する列の例
CODE(必須) A列=管理番号(CODE128にする値)
商品名 B列=品名(ラベルに表示)
価格 C列=価格(ラベルに表示・無くてもOK)
印刷枚数 ラベルを何枚刷るか(1〜500)
列の割り当てとバーコード形式の選択

STEP3. コードを確認する

取り込んだ内容が一覧で表示され、使えない文字や桁数オーバーがあればエラーとして知らせてくれます。

表示 意味 対処
正常 そのまま作成できる —
エラー 日本語・全角・80文字超など その場で修正するか、行を削除する
エラー行の除外 正常行だけを出力したい 「表示されたエラー行を除いて正常行だけを出力する」にチェック
入力内容の確認(正常/エラーの判定)

STEP4. 画像を作成して保存する

「画像を作成」を押すと、CODE128が生成されます。

生成されたバーコード(PNG・SVG保存ボタン)

各バーコードにはPNG保存・SVG保存のボタンが付き、「画像を作成」「PNG一括保存(ZIP)」ボタン

まとめて受け取るときは「PNG一括保存(ZIP)」が便利です。

保存形式 向いている用途
PNG そのまま貼り付け・メール添付・Web
SVG 拡大しても劣化しない。印刷・DTP向け
ZIP 大量のバーコードをまとめて受け取る
POINT
・CODE128は半角英数字+記号が使えます(日本語・全角は不可)
・チェックデジットは自動で付くので、入力する必要はありません
・数字だけのコードは特に短くなります(省スペース)
・印刷用ならSVGがきれいです
ZIPで一括ダウンロードしたファイル一覧

使い方②:ラベルとして印刷する

ラベルの設定では、用紙に合わせて次の項目を指定します。

項目 内容
用紙サイズ A4など。ラベル用紙に合わせて選択
ラベル幅・高さ 市販ラベル用紙の寸法を入力
行数・列数 1ページに並べる数(枚数計算の基準)
ラベル内余白・文字サイズ バーコードと文字の収まりを調整
ラベルの設定(用紙サイズ・行数・列数) ラベルPDFのプレビュー 出力したラベルPDFの1ページ目

印刷のコツ

ポイント 理由
等倍(100%)で印刷 バーコードは縮小すると読み取れなくなるため
「用紙に合わせる」はオフ 自動縮小でバーが潰れるのを防ぐ
まず普通紙でテスト 位置ずれを先に確認できる
余白はラベル用紙に合わせる 端が欠けると読み取り不能になる
読み取り機で必ず確認 印刷後の確認が一番確実

タカヒロ

タカヒロ
「ラベルに収まらない」と感じたら、まずCODE128を思い出してください。
同じ番号でもCODE39より短くなるので、たいていのラベルに収まりますよ。

うまくいかないときの対処法(トラブルシュート)

症状 原因 対処
「使えない文字があります」と出る 日本語・全角・制御文字 半角英数字に直す(全角→半角変換を使う)
ラベルに収まらない 桁数が多い/ラベルが小さい 桁数を短くする/行数・列数や文字サイズを調整する
読み取れない 印刷が小さい・かすれ・縮小印刷 等倍で印刷し、解像度を上げる
先頭の0が消える Excelが数値として扱っている セルを文字列にしてから貼り付ける
チェックデジットを入れてしまう 自分で計算して末尾に付けた 入力しない(自動で付きます)
見出し行までバーコードになる 「先頭行は見出し」が未指定 取り込み時に先頭行は見出しを選ぶ
ラベルからはみ出す 行数・列数・余白の設定 行数/列数を減らし余白を調整する
上限を超えて作成できない 100件・500枚の制限 一覧を分割して複数回に分ける

よくある間違い

間違い 起きること 正しいやり方
日本語のまま取り込む エラーで作成できない 半角英数字の管理番号にする
チェックデジットを手で付ける 二重になって読み取り値が変わる 入力しない(自動計算)
CODE39のつもりで小文字を入れる CODE39ではエラー CODE128なら小文字もOK
ラベルを縮小印刷する バーが潰れて読めない 等倍(100%)で印刷する

参考:VBAで作る場合(従来の方法)

「どうしてもExcel内で完結させたい」という場合は、バーコードコントロールを使う方法もあります。

Sub CODE128を一括作成する()
    Dim i As Long
    Dim objBar As Object

    ' A列2行目以降の値を、B列のセルサイズに合わせてCODE128にする
    For i = 2 To Cells(Rows.Count, 1).End(xlUp).Row
        With Cells(i, 2)
            ActiveSheet.OLEObjects.Add(ClassType:="BARCODE.BarCodeCtrl.1", _
                Link:=False, DisplayAsIcon:=False, _
                Left:=.Left + 2, Top:=.Top + 2, _
                Width:=.Width - 2, Height:=.Height - 2).Select
        End With

        Set objBar = Selection.Object
        objBar.Style = 7             ' 7 = Code-128
        objBar.Value = Cells(i, 1).Value
    Next i
    Set objBar = Nothing
End Sub
注意点 内容
ライブラリ Microsoft BarCode Control が必要(Access由来。環境によっては入っていない)
バージョン 「BarCode Control 16.0」などOfficeのバージョンで異なる
スタイル番号 Style = 7 がCode-128
文字の検証 自動では行われないので、自分でチェックが必要
ブックの重さ OLEオブジェクトが増えるためファイルが重くなる

大量作成・文字の検証・ラベル印刷が目的なら、ツールを使うほうが速くて安全です。

さいごに

今回は、Excelからバーコード(CODE128)を一括作成する方法をまとめました。

・CODE128の特徴と使える文字
・Excelの一覧からCODE128を一括作成する手順
・商品名を別欄に持つ一覧の取り込み方
・PNG・SVG・ZIPでの保存
・ラベルPDFの作成と印刷のコツ
・CODE39との使い分け
1. CODE128は半角英数字+記号が使え、CODE39より短く収まる
2. 一覧を貼り付けて列を割り当てる→コードを確認→画像を作成
3. チェックデジットは自動。手で付けない
4. PNG/SVG/ZIPで保存、ラベルPDFで印刷までできる
5. 印刷は等倍(100%)。縮小すると読み取れなくなる

VBAで1件ずつ作っていた作業が、貼り付けて数クリックで終わります。

しかもブックを重くせず、ラベルに収まる短いバーコードを作れるので、出荷や物流の現場でも使いやすくなりました。

まずは手元の出荷一覧で、この流れをぜひ試してみてください。

エク短ツールズ「CODE128作成」はこちら



この記事の関連キーワード

こちらの記事の関連キーワード一覧です。クリックするとキーワードに関連する記事一覧が閲覧できます。






コメントを残す

メールアドレスが公開されることはありません。 ※ が付いている欄は必須項目です

CAPTCHA ImageChange Image