ジャムスタ

just another mind Style

VLOOKUP関数(Googleスプレッドシート)

別のデータから一致するものを持ってくる。
 
VLOOKUP(検索条件, 配列, 指数, 並び替え順序)
※詳細はページ下部参照。
 
=IF(C31="","",VLOOKUP(C31,費目・適用表!$A$7:$B$13,2,FALSE))
 
たとえば、上の式がD31に入っているとしよう。C31は左隣のセルということになる。
 
そこに入っている値が、空白ならば空白。つまり何もしない。
 
もし何か入っているのならば、VLOOKUP関数が働く。ここまでがIF関数の働き。以下がVLOOKUP関数。
 
検索条件はC31に入っている値。何かの数字としておこう。
 
その数字を「費目・適用表という別のシートのA7からB13の範囲」で検索をかける。
 
たとえば、C31に「3」という数字が入力されたら、「費目・適応表」というシートのA7からB13の中でそれが入っている行を探す。
 
もし発見したらその行の二つ目の要素を検索結果として返す。式に含まれている「2」は二番目の要素(行番号)ということ。
 
最後のFALSEを指定しておくと、完全に一致したものだけを返す。
 
 
運用の具体例としては、
 
あるマスに「3」を入力する。その3は別のシート(適応表)で「医療費」と定義されている。すると「3」を入力した隣のマスに自動的に「医療費」と入力される。
ということ。
 
適応表はこんな感じになっている。
 
1 ○○
2 ○○
3 医療費
4 ○○
 
この方式であれば、「医療費」を「医療・医薬品費」に変えたくなったとき、全てのセルを入力せずに、適応表の項目だけ変更すればよいようになる。
 
 
1 ○○
2 ○○
3 医療・医薬品費
4 ○○
 
ということ。
 

以下はGoogleドライブヘルプより


名前構文説明詳細
参照 VLOOKUP VLOOKUP(検索条件, 配列, 指数, 並べ替え順序)

右隣のセルを参照して垂直方向に検索します。配列の先頭列に特定の値が含まれている場合は、[指数] で指定した配列内の特定の列の同じ行に値を返します。

  • [検索条件] は、配列の先頭列で検索する正確な値です。
  • [配列] は、参照です。少なくとも 2 列を含める必要があります。
  • [指数] は、返す値が含まれている配列内の列の番号です。先頭列の番号は 1 です。
  • [並べ替え順序](オプション、デフォルトは TRUE)では、配列内の先頭列を並べ替えるかどうかを指定します。TRUE の場合は、検索条件にもっとも近いものを返します。FALSE の場合は、完全に一致するもののみを返します。