エクセルには、表の任意の範囲に「名前を付ける」という機能がある。この機能を使うと、関数を利用するときに式が簡素化され分かりやすくなる。また、データの入力規則のリストにも設定できるため、いちいち入力する手間が省ける。
セル内の入力を特定のリスト内からプルダウンで選択できるようにするとき、「データの入力規則」を使う方法がある。そのリストを設定するには、「ホットコーヒー,アイスコーヒー,…」といったように、カンマで区切ってリスト用データを列記する必要があるが、先ほど設定した名前を使うと簡単に設定できる。
先ほど付けた名前の前に「=」を付けるだけでよい。一つひとつ入力するよりもかなり効率的だ。なお、プルダウンを設定したいシートと、商品名が記載されているシートが違うシートでも問題ない。ここでは「商品リスト」シートにリストがあり、「売上リスト」シートに売り上げを記録するようになっている。
商品名を選んだら単価が自動的に転記できるようにすると、さらに効率的だ。このような場合は「VLOOKUP」という関数を利用する。「表を検索して値を取り出す」ことができる関数だ。まずは関数を設定する前に、単価も含めた範囲に名前を付ける。
[caption id="attachment_51147" align="aligncenter" width="600"] 「商品リスト」シートの「A3」から「B10」までを選択し、名前ボックスに「商品リスト」と入力して「Enter」キーを押す[/caption]
[caption id="attachment_51148" align="aligncenter" width="600"] 「売上リスト」シートの「C3」を選択した状態で、数式バーに「=VLOOKUP(B3,商品リスト,2,FALSE)」と入力する[/caption]
数式バーに入力した値について解説する。
VLOOKUP -表を検索して値を取り出す
=VLOOKUP(検索値, 検索範囲, 列番号,検索方法)
「検索値」を「検索範囲」の左端から探し、見つかった行の左から「列番号」目にあるセルの値を返す。「検索方法」は「FALSE」を指定すると完全一致の値を探し、「TRUE」を指定するか省略すると、検索値以下の最大値を探す。
ここでの検索値とは商品名なので、商品名が記載されている「B3」を指定する。検索範囲は名前を付けた「商品リスト」、単価の列番号は2列目なので「2」、検索方法は完全一致なので「FALSE」を指定すればよい。
[caption id="attachment_51149" align="aligncenter" width="600"] 関数を入力して「Enter」キーを押すと自動的に「450」と入力される[/caption]
もし範囲に名前を付けていなければ、「検索範囲」の箇所には「商品リスト!$A$3:$B$10」と表記しなければならない。「商品リスト!」は「商品リスト」というシートであることを示すもの、「$A$3:$B$10」は、検索範囲を絶対参照にしている。そうしておかないと、次行以降にコピーする際、検索範囲がずれてしまうからだ。このように名前を付けることによって指定がかなり簡略化できる上、分かりやすい。
また、数量を入れれば合計金額が自動計算されるよう、以下のように設定した。
[caption id="attachment_51150" align="aligncenter" width="600"] 「E3」がアクティブになった状態で「=C3*D3」と入力[/caption]
[caption id="attachment_51151" align="aligncenter" width="600"] 単価×数量の金額が表示される[/caption]
「単価」と「合計金額」は最後の行までドラッグしてコピーしておこう。なお、商品を選んでいない行の単価や合計金額は「#N/A」と表示されるが、入力すると数値が表示される。
名前を管理する
名前を削除したり変更したりしたい場合は、ダイアログボックスを開いて管理できる。
[caption id="attachment_51152" align="aligncenter" width="600"] 「数式」タブの「名前の管理」をクリックする[/caption]
[caption id="attachment_51153" align="aligncenter" width="500"] 「名前の管理」ダイアログボックスが表示されるので、ここで削除や編集ができる[/caption]
【ダウンロード】
「時短エクセル」 エクセルの表に名前を付けるとリスト作成や関数がラクになる!のお試しファイルのダウンロードはこちらから(Excelファイル)
※解説用画面はWindows 11上でMicrosoft 365のExcelを使用。一部メニュー名などが異なる場合がある