見出し画像

VBAでBarCode_読込1

今回は、前回作った社員証のバーコードをバーコードリーダで読み取って処理を行うプロシジャーを作ります。
本題に入る前に、バーコードリーダーがどのような動きをするのかを調べてみましょう。(バーコードリーダーがお手元に有る方はお試しください。)

基本的な動きを見るために「Word」で新しい文書を開いて、文字入力モードを「半角」(赤丸部分をA)に設定してください。

Wordで入力モード「半角」

この状態で、前回作成した社員証のバーコードを読み取ってみると、バーコード下部に記載された数値と同じものが表示され、自動的に改行されます。
また、ペットボトルやお菓子のパッケージ等に付いているバーコードも、同様に読み取れるはずです。

読み取り結果

ここで分かったことは「バーコードリーダーは、コード化された13桁の数値に改行記号を付けて書き出す」ということです。
これは、手作業により「10(テン)キーで数字を打ち込み、最後にエンターキーを押す操作」を行っているのと同様なことです。しかも超高速で。

では、この数値をどのように利用するのでしょうか。
前回コード定義により、左から24を当社の番号、1を支店番号、次の4桁を部署番号、最後の5桁を社員番号として12桁に意味づけしました。(右端の13桁目はチェックデジットです)
なので、このコード定義に基づいて「なにかしらの処理」を行います。
前回からのテーマは「勤怠管理もどき」を作ることなので、ここでは「社員の出社時刻と、退社時刻を記録する」ものを作ろうと思います。
それでは、前回の練習2を開いて「シート名簿」に出社時刻と退社時刻の欄を追加します。
6行目F列~15行目G列は表示形式を時刻(hh:mm:ss)に設定してください。

シート「名簿」

それから、バーコード入力画面としてシート「出退」を追加・作成してください。

シート「出退」

9行目E列F列を結合、H列の表示形式を時刻(hh:mm:ss)、13行E列F列の表示形式を文字列に、G列~I列を結合
シートの設定が完了したら、ツールバー「表示」をクリックして「目盛線」「見出し」のチェックを外すとスッキリしますよ。

見出し・目盛線を非教示

さあ、これからがプロシジャー作成の本番となりますが、ここまで書き進めて来た中で、意外と長くなりそうな気配を感じます。
・・・てことで、急遽「VBAでBarCode_読込」を3分割することにします。
続きは、近日公開予定の「VBAでBarCode_読込2」をご覧ください。


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