【Excel】エクセルでQRコード・バーコードを読み取る方法(QRコードの読み取り・連携設定も)
エクセルでQRコードやバーコードを読み取りたいけれど、どのように設定すればよいかわからない。そんな悩みをお持ちの方に向けて、本記事ではエクセルとバーコード・QRコードリーダーを連携させて読み取る方法をわかりやすく解説します。
エクセルはスキャンデータを受け取ることに非常に相性がよく、USBバーコードリーダー・スマートフォン連携・VBAマクロなどを組み合わせることで効率的な読み取りシステムを構築できます。
USBバーコードリーダーでエクセルに読み取る基本設定
それではまず、USBバーコードリーダーを使ってエクセルにバーコード・QRコードの値を読み取る基本的な設定手順について解説していきます。
USBバーコードリーダーの接続と動作確認
USB接続のバーコードリーダーは、PCに接続するだけでHID(ヒューマンインターフェースデバイス)として認識されます。ドライバのインストールは基本的に不要で、キーボードと同じ入力デバイスとして機能します。
1. USBバーコードリーダーをPCに接続する
2. Windowsがデバイスを自動認識するまで待つ
3. メモ帳などを開き、バーコードをスキャンして文字が入力されるか確認する
4. 正常に入力されればエクセルでも使用可能な状態
エクセルのセルにバーコードを読み取る手順
1. エクセルを開き、読み取りデータを入力したいセルをクリックして選択する
2. バーコードリーダーで対象のバーコードまたはQRコードをスキャンする
3. スキャンしたデータが選択中のセルに自動入力される
4. 多くのリーダーはスキャン後にEnterを自動送信するため、次のセルに自動移動する
EnterではなくTabで次のセルに移動させたい場合は、バーコードリーダー本体の設定を変更します。リーダーの設定方法はメーカーのマニュアルを確認しましょう。
連続スキャンの効率化設定
在庫管理や棚卸しなど、連続してスキャンする業務ではエクセルのセル移動方向の設定を最適化することが効率化につながります。
Enterキーの移動方向を変更する手順:
1. 「ファイル」→「オプション」→「詳細設定」をクリックする
2. 「Enterキーを押したらセルを移動する」にチェックが入っていることを確認する
3. 移動方向を「下」または「右」に設定する
4. OKをクリックして保存する
スマートフォンでQRコードを読み取ってエクセルに連携する方法
続いては、スマートフォンでQRコードを読み取り、その結果をエクセルと連携させる方法を確認していきます。
スマートフォンの標準カメラアプリで読み取る
現在のiOS・Androidのスマートフォンは、標準カメラアプリでQRコードを読み取る機能が搭載されています。URLや文字列をQRコードとして表示しておくことで、スマートフォンで内容を確認したり共有したりできます。
エクセルで作成したQRコードをスマートフォンで読み取る場合は、印刷またはモニター表示して読み取る方法が一般的です。
Microsoft 365のモバイルアプリを活用した連携
Microsoft 365のエクセルアプリ(iOS・Android)には、カメラを使ってバーコードやQRコードをスキャンする機能が一部搭載されています。スキャンしたデータをOneDrive経由でPC版エクセルに共有することで、外出先での棚卸しや検品作業を効率化できるでしょう。
Bluetooth・無線バーコードリーダーとの連携
有線USBタイプのほかに、BluetoothやWi-Fi接続の無線バーコードリーダーもあります。倉庫や店舗など広いエリアでの読み取り作業にはワイヤレスタイプが適しています。接続設定はリーダーのペアリング手順に従い、接続後はUSBタイプと同様にエクセルのセルに直接入力できます。
VBAマクロでバーコード読み取りデータを自動処理する方法
続いては、バーコードリーダーで読み取ったデータをVBAマクロで自動処理する方法を確認していきます。
読み取りデータのVLOOKUP自動検索
バーコードを読み取るたびに商品マスタを自動検索し、商品名・価格・在庫数などを隣のセルに自動表示させることができます。
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Column = 1 Then ’A列に読み取りデータが入力された場合
Dim result As Variant
result = Application.VLookup(Target.Value, _
Worksheets(“マスタ”).Range(“A:C”), 2, False)
If Not IsError(result) Then
Target.Offset(0, 1).Value = result ’商品名をB列に表示
Else
Target.Offset(0, 1).Value = “該当なし”
End If
End If
End Sub
重複スキャンの防止処理を追加する
同じバーコードを誤って2回スキャンしてしまった場合に、警告を表示する処理を追加することで入力ミスを防げます。
‘A列に既に同じ値が存在するか確認する処理
If Application.CountIf(Range(“A:A”), Target.Value) > 1 Then
MsgBox “このバーコードはすでに読み取り済みです”, vbExclamation
Target.ClearContents
End If
読み取りログを自動記録する仕組みを作る
スキャンした日時・バーコード値・担当者名を自動でログシートに記録する仕組みを作ることで、入出庫履歴の管理や棚卸し作業の記録を自動化できます。
Worksheet_Changeイベントとバーコードリーダーを組み合わせることで、スキャンするだけで日時・担当者・バーコード値が自動記録される本格的な在庫管理システムをエクセル上に構築できます。
バーコード・QRコードの読み取りでよくあるトラブルと対処法
続いては、読み取り時に発生しやすいトラブルと対処法を確認していきます。
読み取り値に余分な文字が入る場合
バーコードリーダーによってはスキャン後に改行コードやスペースが自動付加される設定になっているものがあります。リーダーの設定ツールでサフィックス文字を削除するか、VBAでTrim関数やReplace関数を使って不要な文字を除去しましょう。
日本語を含むQRコードが文字化けする場合
QRコードに日本語(全角文字)を含む場合、読み取り時に文字化けが発生することがあります。これはQRコード生成時の文字コード設定に起因することが多く、Shift-JISとUTF-8の違いが原因になるケースが代表的です。生成ツール・APIの文字コード設定と読み取り環境の文字コードを一致させることで解決できます。
スキャン速度が遅い・読み取り精度が低い場合
読み取り精度が低い場合は、バーコードの印刷品質・ラベルの汚れ・光の反射などが原因であることが多いです。特に光沢紙に印刷したバーコードは光が反射してリーダーが読み取りにくくなることがあるため、マット紙への変更を検討しましょう。
まとめ
本記事では、【Excel】エクセルでQRコード・バーコードを読み取る方法として、USBリーダーの基本設定・スマートフォンとの連携・VBAマクロによる自動処理・トラブル対処法まで詳しく解説しました。
バーコードリーダーとエクセルの組み合わせは、追加費用を抑えながら実用的な管理システムを構築できる非常にコストパフォーマンスの高い方法です。VBAマクロを活用することで、読み取りデータの自動処理・重複防止・ログ記録まで実現できます。ぜひ業務効率化に役立ててください。