各種セミナー情報や、イベント開催のご案内、出展レポートなどをご紹介します。
オフィスソフト使いこなし(第9回)
関数を使って請求書を作ろう
- 公開日
- 2025-12-24
今回は、エクセルを使った請求書の作例を紹介します。関数を使うことで、商品のコードを入力すれば商品名と単価が自動的に表示される請求書を作ることができます。
本文内では、エクセル2010を使用していますが、他のバージョンでも活用できます。
商品リストを作る
請求書が商品名や単価を参照するための、「商品リスト」(商品の一覧表)をあらかじめ作成しておきます。商品リストには、ひとつの商品コードに対し、商品名と単価を入力しておきます。
シートの名前を“商品リスト”にしておきます。
-
商品リストの商品コードは、昇順(下に行くほど数字が大きくなる)ように並べます。また、商品コードは重複しないように入力してください。
請求書の体裁を整える
商品リストとば別のシートに請求書を作成します。普段使用している請求書に合わせて項目を設定し、デザインを行いましょう。

-
請求書の作成に関しては、以前のコラム(「10分で作るエクセル見積書」)を参考にすると良いでしょう。
商品コードから商品名を表示する
商品コード欄にコード番号を入力すると、自動的に商品名が表示されるように該当するセルに関数を設定します。

①商品コード欄に商品コードを入力します。このコードは、請求書完成後に削除する予定なので、商品リストに存在するコードであれば何でも構いません。
②VLOOKUP関数を使って、コードから商品名が表示されるようにします。商品名欄をクリックし、数式バーに「=VLOOKUP(」と入力します。(すべて小文字、Enterキーは押さないでください)

-
以前のコラム(第1回 10分で作るエクセル見積書)では、数式バーの関数ボタンをクリックすると表示される[関数の挿入]ダイアログボックスを使って関数を入力する方法を解説しました。今回は、もうひとつの方法である数式バーに直接関数を入力していく方法を解説します。

③検索値を入力するセルをクリックします。ここでは「商品コード」のセルになります。



-
指定する範囲は、商品コード、商品名、単価が入力されているセル範囲となります。上記の例の場合には、A2からC15となります。セル範囲を指定すると、数式バーには、
=VLOOKUP(A11,商品リスト!A2:C15
のように表示されます。これは、「商品リスト」シートの「A2」から「C15」の範囲で「A11」に入力された文字列を検索する、という意味になります。 なお、範囲指定後、商品リストに項目を追加する場合には、VLOOKUP関数の範囲設定も変更してください。
※範囲の左端列に、検索に使うコードが入力されている必要があります。

-
セル範囲の指定を絶対参照に変更するのは、数式をコピーする際に指定した範囲がずれてしまうことを防止するためです。
⑧セル範囲の後に「,」(コロン)を入力します。
⑨検索値に対応する値が入力された列番号を入力します。ここでは商品コードに対して商品名を表示させたいので、商品名が入力されている列の番号、「2」を入力します。

-
ここまでの時点で、数式の意味は「A11」に入力した値を「商品リスト」シートの「$A$2」から「$C$15」の範囲から検索し、該当する行の左から「2」列目にある文字列を表示するという意味になります。単価を表示する場合には3列目なので、列番号を「3」にします。

-
表示されるバルーンヘルプから”FALSE”をダブルクリックしても構いません。(エクセル2003にはバルーンヘルプの機能はありません)


・VLOOKUP関数と引数
VLOOKUP関数は、指定したブック/セル範囲から値を参照する関数です。
=VLOOKUP(検索値、検索範囲、列番号、検索方法)
検索値:検索する値あるいは値を入力したセルを指定します。
検索範囲:検索するセルの範囲を指定します。
列番号:検索結果として参照する値が入力された列を指定します。
検索方法:検索値が一致しなかった場合の動作を指定します。省略可。
この関数を使うと、「検索範囲」の中から「検索値」と同じ値や文字列を検索し、見つかった「検索値」を含む行の「列番号」にある値や文字列を表示できます。
エラー表示を回避する
VLOOKUP関数を使って商品コードから商品名を表示させることは出来ましたが、このままだと商品コードが空欄だとエラーが表示されてしまいます。IFERROR関数を使ってエラーを表示しないように設定します。-
≪エラーの例≫


・IFERROR関数と引数
IFERROR関数は、エラーの場合に表示する値を指定する関数です。
値、エラーを検証する値を指定します。
エラーの場合の値、エラーの場合に表示する値を指定します。
この関数を使うと、値や数式がエラーになった場合に表示する、値や文字列を指定できます。
-
・エクセル2002/2003の場合
IFERROR関数は、エクセル2007から搭載された関数なので、それ以前のバージョンには存在しません。2007以前のバージョンでエラー表示を回避するには、IF関数を使ってエラー時の動作を指定するなど、いくつかの方法があります。
たとえば、次のような数式が考えられます。=IF(A11=””,””,VLOOKUP(A11,商品リスト!$A$2:$C$15,2,FALSE))
上記の数式では、A11のセルが””、すなわち空白だった場合には空白を表示し、そうでない場合にはVLOOKUP関数で参照された値が表示されます。
関数をコピーする
関数の入力が終わったら、その関数を他のセルにもコピーします。
①関数の入力されたセル(商品名欄1行目)をクリックします。
②セル右下の点(フィルハンドル)をドラッグし、隣のセル(単価)にコピーします。



④検索値の参照セル番号がずれているので修正します。
⑤表示するのは「単価」なので、列数を「2」から「3」に変更します。
⑥修正が終わったら、数式バーのチェックボタンをクリックして数式を確定します。




まとめ
他の関数を組み込むことで、もっと便利な請求書に仕上げることも可能です。「関数」と聞くと難しいように思えるかもしれませんが、エクセルには関数を簡単に利用するための機能が搭載されていますから、関数の機能をしっかりと抑えておけばそれほど難しくはありません。関数を使うことで、作業は飛躍的に楽になるので、是非使い方をマスターしてください。資料ダウンロード
さまざまな業種・業態・規模のお客さまのビジネスに役立つ資料や、NTT東日本の各種サービスのパンフレット、ご利用ユーザーさま向けのマニュアルをダウンロードいただけます。



