EXCEL

VLOOKUP 関数を使って 名前で名簿を検索し 部署名 と 内線番号 を一瞬で表示する仕組みを作る

今回は、 EXCEL の VLOOKUP 関数を使って、簡易な名簿検索ツールを作ってみます。
会社で内線や携帯番号の検索、所属部署、役職などを検索することって有りますよね。せっかく、エクセルに表で入れているのに、表から人が探しているのではないですか? それでは、勿体ない。EXCELの持ち腐れ。この記事を読んで 業務の効率化を進めてください

まとめの後に、この記事に関連する有益な情報記事へのリンクがあります。

こんな質問がありました。

名簿がExcelに入っているんですけど、
名前で検索して部署名と内線番号を簡単に表示
できるようになりませんか。

Excelには検索機能が付いていて
[Ctrl]+[F]で検索ができますよ。

その機能は知っているんですけど
画面のあちらこちらに移動するので
場所を探すのがちょっと大変なんです。

それに一日に何回も繰り返すので
そのやり方では時間が足りません。

私の場合は、VLOOKUP関数を使って、検索して一定の場所へ表示する、検索ツールを作成して、仕事で使っています。
簡単にできるし、入力場所も一定、表示する場所も一定なので、パフォーマンスは高いですよ。

それでは、始めます。
まずは、VLOOKUP関数の仕様から簡単に説明しておきます。

VLOOKUP 関数の仕様

VLOOKUP(検索値, 範囲, 列番号, 検索の型)

検索値検索する文字列や値です。
今回の検索ツールでは、名前の文字列にあたります。
範囲データの範囲です。
検索値を検索する列と、検索の結果アウトプットしたい値が入っている列、を合わせた範囲を指定します。
列番号アウトプットしたい値の列は、範囲の中の何列目かを数値で指定します。
検索の型完全一致(FALSE)か曖昧検索(TRUE)かを指定します。
省略可能ですが、私は、必ずFALSEを指定することとしています。
なぜか?についてはこの記事に詳しく説明していますので、良かったら参照してください。
曖昧検索の使い方は、得点からクラスに分類するようなときに使います

VLOOKUP関数の列番号は、例えば、3列を範囲として選択している場合、左から1、2、3となります。
必ずしも、Aは1、Bは2ということではありませんので注意してください。

データを準備する。データベースとも言います。

実際にやってみましょう。
今回のケースでは、名前を入れたら完全一致でデータベースを検索し、部署名と内線番号を表示するため、名前・部署名・内線番号の表を作成します。

今回は、各部署を代表する5名を選抜して名簿を作りました。
これで、データベースの準備ができました。

VLOOKUP 関数で検索するフォームを作成する

次のような入力フォームを作ります。ブルーの枠に名前を入れると、その下の枠に部署名と内線番号が表示される仕組みです。

部署名を表示するC4へ、=VLOOKUP(C2, $H$2:$J$999, 2, FALSE)と入力します。C2の値(文字列)をH2:J999の範囲の一番左側の列から検索し、2列目の値を返す。という意味です。したがって、I列の部署の名前が返されるというわけです。

VLOOKUP

範囲の指定で、$H$2:$J$999となっています。すべて絶対参照としています。原則、検索範囲などデータが入っている部分を指定する場合は絶対参照をおすすめします。今回$J$999と999までを範囲としているのは意味があります。どんどん下に追加していっても、式を変更しなくて良いようにしているのです。

同様に内線番号の部分にもVLOOKUP関数での検索を入力します。

名前を入れて動作を確認してみましょう。

山田みどりと入力してエンターを押してみます。部署名は総務、内線番号は203と表示されました。成功です。

VLOOKUP エラーの処置をする

でも、ちょっと待ってください。入力ミスした場合はどうなるでしょうか。”山田 みどり”と入力してみます。エラーが出てしまいます。

これは、名前を入力する前から出ていました。未入力やエラーの場合は、空白で表示するようにしてみます。そのためには、IFERROR関数を使います。
もしエラーの場合は、””(なにもなし)を表示する。ちょっと変な表現ですが、これで空白表示となります。先ほど入力したVLOOKUP関数の部分を修正してみます。

先ほどのVLOOKUP関数の前に「IFERROR(」を追加、後ろに「,””)」を追加します。
E4セルも同じようにIFERROR関数で囲みます。

先ほどのエラー表示が消ました。
これで、完成です。
あとは、データベース部分をカットして別のシートにコピーしても良いですし、表を追加しても構いません。入力と出力のフォームは変更しなくても大丈夫です。1000人を超えるときはVLOOKUP関数の範囲の指定を変更してください。

VLOOKUP 今回のまとめ

  • データベースの検索は、VLOOKUP関数でできる。
  • エラー表示を消すために、IFERROR関数を使う。
  • 1000人を超えるときは、範囲の999を9999にすると使えます。

同姓同名への対応

今回は、結果の表示が1つだけですが、二人や三人の同姓同名が居たらどうするの?ってことになります。同姓同名が居ても大丈夫なように、結果を複数行で表示させる方法や、生年月日も同時に検索することで、一人に特定する方法について、以下の記事で紹介しています。

VLOOKUP で うまく 検索できない ときは

そして、やってみたけど うまく 検索できない というときに、まずチェックして欲しい、 よくある原因 について以下の記事で紹介しています。

空白 があって 一致するものが あるのに表示されない

今ある名簿は、空白があちらこちらに混在していて、データを修正しないと 使えなくて困った というときに、空白 が あっても 取り除いて 検索する方法や、 データベース を整える方法については、以下の記事を参照してみたください。

第三引数の 列番号 の指定を工夫する

列番号の指定に、数字を使わないことで、1つのセルに式を入力すれば、他のセルにはコピーでできるようになります。

列番号の指定を、ラベル名での検索を使うことで、探して数えることなく簡単にVLOOKUP関数の第三引数を指定します。

名簿検索システムの集大成

VLOOKUP関数の検索範囲を切り替える

是非、見てみてください。よろしくお願いします。

<広告>始まり—–

どうしても、なくせないのがFAXでの書類の受け渡し。相手がありますのでFAXでと言われると、メールでお願いしますとはなかなか言えないこともあります。そんなときに、インターネットFAXが代替してくれます。

FAX機の故障や寿命での取替え、インクカートリッジの交換など、保守にかかる手間は結構かかってしまいます。また、紙代・通信費は細かい費用かもしれませんが、固定的に掛かります。複合機であれば、結構な場所をとりますし電源、通信線も結構邪魔になります。 隙間には埃もたまりますので、掃除も大変で、放っておくとトラッキングによる火事も心配です。

といったように、FAXが有るだけで、こんなにも労力・費用・安全に対する負担があります。そうであれば、FAXでのやり取りは、電子化の流れでemailやクラウドなどの他の手段に変えていきたいところです。

これらの課題への対応に、インターネットFAXはいかがでしょうか。

スマホで受信して内容を確認し、スマホからFAXでの返信ができます。

電子帳簿保存法の電子取引データ保存が義務化されましたが、この法改正への対応策として活用できるのではないでしょうか。

<広告>終わり—–

コメント

タイトルとURLをコピーしました