【VBA】エクセルでバーコードリストを作りたい
VBAだけじゃ私にはできなかったのですが一応
業務上バーコードを使ったりもするので
何とかバーコードリスト自作していきます。
以前はQRコードをWeb上で作れるサイトを紹介しましたが、
今回はパソコンのExcel内で、
かつ、まとめてバーコード一覧を作るための手段を
説明していきます。
まずバーコード用のフォントが必要です。
今やろうとしているバーコードは数字とか英字とかを含めて桁数も幅がある
ので、それをバーコード化するのにコード39という形式の
バーコードを作っていきます。
そのバーコード用のフォントが
下のリンクからダウンロードできます。
ダウンロードしたファイルは
TTFデータです。
これがフォントのデータ形式なんですね、
今回初めて知りました。
で、これを
C:\Windows\Fonts
に直接ドラックします。
そうするとフォントがインストールされます。
その後にエクセルを立ち上げると
フォントの中に 3 of 9 Barcode が追加されています。
例えばこんな感じに数字英字を入力をして
そのセルのフォントを変えるとこうなります。
ただしここで注意してほしいのは
コード39というものは
アスタリスクで始まりと終わりを囲う必要があるので
*A12345B678910C*
という文字列にして、
セルのフォントを書き換える必要があります。
上のバーコードを印刷しても全くスキャナーが反応しなかったので
調べてみてようやくわかりました。
これに気づかなくて結構手間取ったので注意です。
なので正式にはこれ
これなら印刷してスキャナーでバーコードを読みとることができます。
ただこれだけだと特に便利でも何でもないので
一覧にして一気にバーコード作成ができる
マクロまで作ってしまいたいと思います。
初めにイメージがこんな感じ
部品番号があって、これの隣にバーコード一覧。
みたいな。
で隣に*自社コード*を表示
dim lastrow as long
lastrow = cells(rows.count,2).row
range("C2:C"&lastrow).formula = "=""*"&RC[-1]&""*"""
でB列の最終行から上に上がったところの行数を
lastrowに入れて、
C2からClastrowまでを選択して
そこに*隣のセル*
を入れる
ただそれだけだとバーコード化しないので
そのあとセルの書式設定でC列のフォントを
3 of 9 Barcodeにする
そっちはマクロの記録を使った。
まだ意味はよく分かってないので。
これでボタンを押すと
自社コードのセルを隣のセルにバーコード化
してくれるマクロが完成した。
いやーほんと事務職はマクロのし甲斐がある。
面白いな。
こういう時間が使えるうちにもっといろいろなものを
作って試してノウハウにしていきたい。
この記事が気に入ったらサポートをしてみませんか?