コンテンツにスキップ

BARCODE

種類: EGTools 専用関数

テキストをバーコードにエンコードし、呼び出しセルに画像として挿入します(2D 形式は比率を維持し、セルが大きい場合は中央揃え)。

構文

=BARCODE(テキスト, [種類], [オプション])

引数

引数 必須 説明
テキスト 必須 エンコードする文字列
種類 省略可能 QRCODE(既定), CODE128, DATAMATRIX, EAN13/8, ITF, PDF417, AZTEC, CODE39/93, UPC-A/E, CODABAR, GS1-128/DM/QR
オプション 省略可能 数値=余白(2D)、TRUE=下部にテキスト表示(1D)

戻り値

成功すると空の文字列("")を返し、バーコードの図が呼び出し元セルのサイズに合わせて別途挿入されます。テキストが空の場合、種類を認識できない場合、その形式でエンコードできない場合は #VALUE! を、呼び出し元セルを特定できない場合は #REF! を返します。

数式 結果 説明
=BARCODE("12345678","CODE128") Code128 の図を挿入(画像挿入、環境依存)
=BARCODE("https://example.com") 既定の QR コードを挿入(画像挿入、環境依存)

解説

  • サポートする種類: CODE128、CODE39/93、EAN13/8、UPC-A/E、ITF、CODABAR、PDF417、QRCODE(既定)、DATAMATRIX、AZTEC、GS1-128/GS1DATAMATRIX/GS1QRCODE(数値コードも許容)。
  • 生成は zint、読み取り(READBARCODE)は zxing-cpp を使用します。GS1-128/GS1DATAMATRIX/GS1QRCODE は "(01)04012345678901(10)LOT42" のような括弧付き AI 表記を規格どおり(FNC1 先頭+可変長 AI 後の区切り文字、シンボロジー識別子 ]C1/]d2/]Q3)にエンコードし、角括弧 [AI]値 表記やスキャナーが読み取った生ストリーム ]C10104012345678901<GS>10LOT42(<GS>=区切り文字 0x1D — 文字どおり <GS> と書いても認識、先頭の ]C1 識別子はあっても無視)も同じシンボルにエンコードされます。AI の形式・長さ・チェックデジット違反、表にない AI、非 ASCII 文字は #VALUE! を返します。
  • EAN13/EAN8/UPC-A/UPC-E はチェックデジットなし(12/7/11/6〜7 桁)で指定すると計算して付加し、含めて指定すると検証します(誤りは #VALUE!)。ITF は桁数が奇数の場合、先頭に 0 を付加します。
  • オプション引数は、数値の場合は余白(2D 形式、モジュール単位)、TRUE の場合は下部の文字表示(1D 形式)として解釈します。
  • 2D 形式は規格比率(モジュール正方形)を維持したまま呼び出し元セル内に収めてセル中央に配置し、1D 形式はセルを埋めます。
  • テキストに配列を指定すると #VALUE! を返します(セルごとに図 1 枚) — 複数件は数式を行ごとにコピーして使用してください。
  • 対応: Excel 2010+。すべての Excel バージョンで BARCODE の名前のまま登録されます。