Excelの関数VLOOKUPでバーコードの品名を表示する

1.はじめに

お客様から、パソコンにUSBバーコードリーダーのデータはパソコンにどのように入力するのか、お問い合わせをいただくことがあります。

「USBバーコードリーダーの入力はキーボードの入力と同じ」がご回答です(※)。

このページでは、バーコードリーダーとキーボードの入力が同じことをご理解いただくため、エクセルの関数を使ってご説明します。

ご了承下さい

Excelはマイクロソフト社の製品です。Excelについてのお問い合わせは弊社ではお受けいたしかねます。使用方法については、アプリケーションのヘルプや市販の解説書を参照してください。

※本文はUSB HIDキーボードインターフェースおよびBluetooth HIDのバーコードリーダーの説明となります。すべての機器環境が本文にあてはまるものではありません。特定の機器やシステムでしか動作しない製品もあります。

2.Excelの関数VLOOKUPでバーコードの品名を表示する

バーコードデータを入力する[商品入力]シートを作成する

バーコードリーダーで読み取ったバーコードを入力していく画面を作成します。

Excel 2016を立ち上げる→[Sheet1]の名前を[商品入力]に変更します。→A1に[商品コード]、B1に[品名]、C1に[単価]と入力します。

Excel 2016

 

元のデータとなる[商品マスター]シートを作成する

バーコードを読み取ったら表示する内容の元となる画面を用意します。

[Sheet2]の名前を[商品マスター]に変更します。→A1に[商品コード]、B1に[品名]、C1に[単価]と入力します。※商品コードはバーコードが表示する文字を入力します。→A2、B2、C2以下に、商品コードと、表示したい内容となる品名と単価を入力します。

Excel 2016

 

[商品入力]シートに関数を入力する

品名を自動的に表示するセルに関数を入力します。[B2]セルに次の関数を入力します。※セルに直接関数を入力するか、[Fx]アイコンで関数のダイアログを開いて値を入力します。

=VLOOKUP(A2,商品マスター!$A$2:$C$11,2,FALSE)

Excel 2016

単価を自動的に表示するセルに関数を入力します。[C2]セルに、[B2]の関数をコピーして貼り付けます。途中にある「2」を「3」に書き換えます(赤文字の箇所)※商品マスター中の3列目を検索する意味

=VLOOKUP(A2,商品マスター!$A$2:$C$11,3,FALSE)

Excel 2016

[B2]セルの関数と[C2]セルの関数を下の方のセルにコピーします。関数があるセルは#N/Aと表示されます。

Excel 2016

 

商品コードをキーボードで入力する(手入力)

[商品入力]シートを開きます→[A]列のセルに、パソコンのキーボードから商品マスタにある商品コードを入力します。→Enterキーを押します→[B]列に品名、[C]列に単価が表示されます。

Excel 2016

商品コードのバーコードをバーコードリーダーで読み取る

[商品入力]シートを開きます→[A]列のセルにカーソルを合わせます→バーコードリーダーで商品コードを表示したバーコードを読み取ります→[B]列に品名、[C]列に単価が表示されます。(上図と同じ結果になります)

なお、バーコードリーダーは自動的にEnterキーを送信することができます。読み取ったら手入力でEnterキーを押したときと同じく、カーソルが下のセルに移動します。

Excel 2016

 

まとめ

「商品コードをキーボードで入力する(手入力)」と「商品コードのバーコードをバーコードリーダーで読み取る」が同じ動作になりました。手入力とバーコードリーダーの入力は同じといえます。

以上の説明から、バーコードリーダーは特別なプログラムは不要で、キーボード入力の代わりに利用できることがご理解いただけたと思います。

バーコードが正しく入力しないときは

バーコードを読み取ると、図のようにバーコードのデータが正しく入力しないときがあります。

例:英文字がひらがなになる、半角文字が全角文字になる、など。

Excel 2016

解決方法は、言語バーを直接入力に設定する、Excelのデータ入力規則の日本語入力を無効にする、などがあります。

詳しい解決方法は下記のページをお読み下さい。

おまけ:#N/Aを空白にする

関数を設定したセルは、[A]列に商品コードがなければ#N/Aと表示します。#N/Aが気になる場合は、次の関数で空白にできます。※セルの数値は適宜読み替えてください

Excel 2007以上

=VLOOKUP(A5,商品マスター!$A$2:$C$11,2,FALSE)にIFERRORを追加します。

=IFERROR(VLOOKUP(A5,商品マスター!$A$2:$C$11,2,FALSE),"")

Excel 2016

 

Excel 2003,2002,2000

=VLOOKUP(A6,商品マスター!$A$2:$C$11,2,FALSE)にIFとISNAを追加します。

=IF(ISNA(VLOOKUP(A6,商品マスター!$A$2:$C$11,2,FALSE),"",VLOOKUP(A6,商品マスター!$A$2:$C$11,2,FALSE))

Excel 2016

 

ページトップ