Cafe HOUKOKU-DOH

~ホッとひと息的な読み物でブレイクするサイト~

IVYおじさんの創業日誌

Excel関数

今週はクライアント企業から依頼された人事評価表をExcelでつくり込んでいた。なんでもExcelでつくり込んでしまうことの是非はさておき(作り込んだ詳しい人がいなくなると、だれもさわれない…)、ひさびさにExcelで簡単なシートをつくったのだ。

 

今回手掛けた評価制度は、ごく一般的な制度設計にした。評価要素群は目標達成度評価、能力評価そして情意評価の3つ。このうち能力評価と情意評価については、等級ごとに等級基準書をつくり、それを評価項目に設定した。

 

このような評価制度の場合、人事評価表の大枠は3つの評価要素群がレイアウトされるが、能力、情意評価項目は等級ごとに設定されるので、単純に考えると、等級の数だけ人事評価表ができあがる。

 

社員数が多い大企業であれば、等級の数だけ評価表があっても、専任のスタッフもいて運用できるのだが、店主のクライアント企業は人事の担当者などいないことがほとんどである。そんな種類の評価表を管理、運用していくことは現実的ではない。

 

 

なので、ひとつのExcelシートで、等級を選択すると該当する評価項目が表示され、かつ等級ごとの設定された評価要素群のウエイト設定、それを反映した評価ポイントの計算、そして評価ポイントを最終的に標語に置き換える計算まで自動でできるようなものが必要となる。

 

このような機能を搭載したExcelシートを作成する場合、読者のみなさんもご承知のVLOOKUP関数を使って、選択した等級などにひもづく項目を表示させる。

 

しかし今回は、選択した等級というキー項目に対し、複数の項目をひもづける必要がある。通常は参照先のシートにあるキー項目から「右側に何列目」という引数を数値で設定するのだが、この方法だと、式をコピーするときにコピー後の関数式の引数をイチイチメンテしなければならない。

 

もっと簡単な方法があるはず!と検索すると、やはりたくさん出てきた。世の中この関数を使って、Excelでゴリゴリとシート作っている人がいかに多いかという証拠である。

 

今回は、参照先のデータベースを「テーブル化」し、そのテーブルのヘッダーの文字列と指定した文字列が同じ列の値を参照するよう、VLOOKUP関数の引数に2つの関数を組合せた。

 

この方法はどうやら「構造化」というらしい。参照先のデータベースにレコードを追加したり項目を追加しても、参照する計算式をメンテする必要がないそうで、きわめて実用性の高い技のようである。

 

ここ最近は実務でゴリゴリとExcelを使う場面がなく、Excelの技もアップデートしていなかったが、あたらしい技を習得でき、とても有意義な仕事であった。

 

丸1日Excelシートとにらめっこしていたのだが、あっという間に夕方になっていたのであった。