VLOOKUP(ブイルックアップ)Googleスプレッドシート関数

VLOOKUP(ブイルックアップ)関数は、表の範囲を列を検索して結果と同じ行にある値を呼び出します
・関数VLOOKUP(ブイルックアップ)
・書式=VLOOKUP(検索値,範囲,列番号,検索の型)
・内容指定された範囲の左端の列で特定の値を検索し、範囲内の対応するセルの値を返します。
検索値:検索する値またはセルを指定
範囲:検索する列を左(1列目)に範囲を指定します
列番号:検索値の列から何列目かを指定
検索の型:「TRUE」「1」「省略」近似値を取得。「FALSE」「0」完全一致を取得

検索の型の「1」と「0」
「1」または「省略」した場合検索値は列をすべて検索して近似値を返します
「0」または「FALSE」の場合、検索する列を上から検索して一致したらそれ以降は検索しません。同じ結果があっても上にある行が選ばれます

使い方
=VLOOKUP(F1,B3:E14,2,0)

スプレッドシート表サンプル
  A B C D E F
1            
2   日時 担当 内線 受付  
3   8月10日 鈴木 1234 9:00~18:00  
4   8月11日 佐藤 5678 10:00~19:00  
5   8月12日 佐藤 5678 10:00~19:00  
6   8月13日 鈴木 1234 9:00~18:00  
7   8月14日 鈴木 1234 9:00~18:00  
8   8月15日 鈴木 1234 9:00~18:00  
9   8月16日 鈴木 1234 9:00~18:00  
10   8月17日 鈴木 1234 9:00~18:00  
11   8月18日 佐藤 5678 10:00~19:00  
12   8月19日 佐藤 5678 10:00~19:00  
13   8月20日 鈴木 1234 9:00~18:00  
14   8月21日 鈴木 1234 9:00~18:00  
15            
=VLOOKUP(F1,B3:E14,2,0)

一覧から日付を指定して右側のデータを呼び出します
例1)=VLOOKUP(F1,B3:E14,2,0)
例2)=VLOOKUP(F1,B:E,2,0)
データが多い場合列を指定した方が良い ・担当者を呼び出す(検索値範囲から検索して指定した列の値を返します)
  =VLOOKUP(F1,B:E,2,0)

・内線を呼び出す(F1B列を検索して3列目の値 B C Dを返します)
  =VLOOKUP(F1,B:E,3,0)

・受付を呼び出す
  =VLOOKUP(F1,B:E,4,0)

※注意:検索値が複数ある場合
検索の型0の場合:
範囲内を上から検索して合致した値を見つけるとそれ以上探しませんので最初に見つけた値が呼び出されます。一致したセルが無い場合は「#N/A」エラーになります
検索の型1の場合:
範囲内のすべて検索して同じ検索値があると上書きされ最後の値が呼び出され、無いと近似値(小さい値)が選ばれます。近似値(小さい値)が無い場合は「#N/A」エラーになります

「#N/A」エラーを表示したくない場合、または指定の文字を出す場合
IFERROR(テストする値,エラーの時の値)関数を使います
  =IFERROR(VLOOKUP(F1,B:E,4,0), "")

エラーの時の値はダブルクォーテーションで囲う必要があります
空白の場合:「""
文字入力:「"検索値が見つかりません"


結果がエラーになる、日時を呼び出せない場合

2通りが考えられます
・指定日時の担当を呼び出す場合
=VLOOKUP(検索値,範囲,列番号,検索の型)
=VLOOKUP("8月18日",B3:E14,2,0)

1つ目:範囲の日時が文字列で入力されている場合
検索値は「"8月18日"」と直接指定した場合「8月18日」という数字と漢字の文字列を探します 範囲の日時も文字列で入力されていれば呼び出せますが、通常セルにある日時はシリアル値として認識されます

範囲の日時:「8月18日」シリアル値「43695」
検索値:「"8月18日"」文字列
文字列の「8月18日」を探してもシリアル値「43695」とは一致しません
対応策:検索値の8月18日をシリアル値に変換します
=VLOOKUP(VALUE("8月18日"),B3:E14,2,0)
※(検索値の年号を省略すると今年になります)

2つ目:日時をセルで指定した場合はシリアル値になりますが
何かの表や去年から使いまわして日付をコピーした場合
「8月18日」が実は「2017年8月18日」など今年ではない時は見た目は一緒でも中身は「2017年8月18日」と「2018年8月18日」なので一致しません
対応策:セルをクリックして見ると年号も表示されるので今年に直します

また検索している関数がTODAYやNOWの場合
TODAYもNOWも表示を日付にすれば「9月19日」ですが
シリアル値が違うので一致しません
=NOW()  44093.886527778
=TODAY() 44093
NOW()は小数点以下に時間を表示しています
今日を検索するにはNOW()ではなくTODAY()を使います


VLOOKUP関数とよく使うスプレッドシート関数
 AVERAGE  空白や「0」のセルを無視した平均値
 AVERAGEA  空白や「0」のセルを含む平均値
 LARGE  範囲内の最大値
 SMALL  範囲内の最小値
 ROUNDDOWN   指定した桁数で切り捨て
HOME

Googleスプレッドシート関数

ネット上からデータを取得する関数

DETECTLANGUAGE(ディテクトランゲージ) テキストで使用される言語を識別して言語コードを返します

GOOGLETRANSLATE(グーグルトランスレート) 言語コードを指定して表示されている言語を翻訳します

ISURL(イズユーアールエル) 指定した値が有効な URL であるかどうかを検証します

IMAGE(イメージ) セル内に画像のURLを指定することで画像を表示します

IMPORTDATA(インポートデーター) 指定したファイルからタブ区切り、カンマ区切りで文字列を抜き出します

IMPORTFEED(インポートフィード) RSSフィードやAtomフィードをインポートします

IMPORTHTML(インポートHTML) ページのソースからクエリを指定して文字列を抜き出します

IMPORTXML(インポートエックスエムエル) さまざまな種類のデータから文字列をインポートします

(C) 2001-2020 Digital World