得意先の会社名などのように、毎回決まったグループから同じ文字を入力するケースでは、ワークシートにリストボックスを配置してマウスで選択できるようにすると便利だ。ここでは、VLOOKUP関数との合わせ技を紹介しよう。

 ワークシート上にリストボックスを配置するには「表示」メニューの「ツールバー」をポイントして「フォーム」をクリックする。実行すると「フォーム」ツールバーが表示される。「フォーム」ツールバーには、ワークシート上に配置できるリストボックスやチェックボックスなどのボタンが用意されている。

図1 「表示」→「ツールバー」→「フォーム」を実行する
図1 「表示」→「ツールバー」→「フォーム」を実行する
[画像のクリックで拡大表示]

図2 表示される「フォーム」ツールバーには、各種のコントロールが用意されている
図2 表示される「フォーム」ツールバーには、各種のコントロールが用意されている
[画像のクリックで拡大表示]

 「フォーム」ツールバーの「リストボックス」ボタンをクリックしてマウスポインタが十字に変化したら、ワークシート上でリストボックスを配置したい位置をドラッグする。マウスのボタンを放すと、ドラッグした位置にリストボックスが配置される

図3 「リストボックス」ボタンをクリックしてから、リストボックスを配置したい大きさをドラッグする
図3 「リストボックス」ボタンをクリックしてから、リストボックスを配置したい大きさをドラッグする
[画像のクリックで拡大表示]

 次に、配置されたリストボックスを右クリック(command+クリック)して表示されるメニューから「コントロールの書式設定」を実行する。表示される「コントロールの書式設定」ダイアログボックスで設定する項目は2つ。リストボックスに表示する元データの場所「入力範囲」と、どのデータを選択したかを返すセル「リンクするセル」だ。ここでは次のように設定した。選択したデータを検索するために、元データの左側に1から連番を入力しておくのがカギだ。

図4 配置したリストボックスを右クリック(command+クリック)して「コントロールの書式設定」を実行する
図4 配置したリストボックスを右クリック(command+クリック)して「コントロールの書式設定」を実行する
[画像のクリックで拡大表示]

図5 「入力範囲」はリストボックスに表示したいデータが入力されているセル範囲を指定する。「リンクするセル」には、リストボックス上で何番目のデータが選択されたか返すセルを指定する
図5 「入力範囲」はリストボックスに表示したいデータが入力されているセル範囲を指定する。「リンクするセル」には、リストボックス上で何番目のデータが選択されたか返すセルを指定する
[画像のクリックで拡大表示]

 さて、ワークシート上に配置したリストボックスでは、選択されたデータが上から何番目であるかが「リンクするセル」に設定したセル(図ではA5セル)に代入される。わかるのは、選択した項目ではなく、何番目かという数字だ。そこでVLOOKUP関数の出番。「リンクされたセル」に入力された番号をキーにして、元データを表引きするのだ。これで、指定したセルにリストボックスで選択したデータを表示することが可能になる。

図6 リストボックスは「何番目のデータが選択された」という数値を返す
図6 リストボックスは「何番目のデータが選択された」という数値を返す
[画像のクリックで拡大表示]

図7 VLOOKUP関数を使えば選択されたデータを表示できる
図7 VLOOKUP関数を使えば選択されたデータを表示できる
[画像のクリックで拡大表示]