見出し画像

【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にする

そっちはマクロの記録を使った。

まだ意味はよく分かってないので。

これでボタンを押すと

自社コードのセルを隣のセルにバーコード化

してくれるマクロが完成した。

いやーほんと事務職はマクロのし甲斐がある。

面白いな。

こういう時間が使えるうちにもっといろいろなものを

作って試してノウハウにしていきたい。

この記事が気に入ったらサポートをしてみませんか?