お問い合わせ

サービス一覧

Excel : エラーにはならないけれども、関数の結果が正しくないとき

2014.10.11
田中裕明

引数を省略する場合、正しく省略できているかどうかを確認します

Excelの関数には、複数の引数を指定するとき、最後の引数を省略できるものがあります。複数の引数は「,」(カンマ)で区切りますが、引数を省略するときは、その前の「,」(省略しないのであれば、前に付けるべき「,」)も書きません。「,」を残すと、そのあとに何も書かなくても、省略することにはなりません。「0」を指定したことになります。
省略したつもりで、「,」を残した場合の結果は、次のようなケースが考えられます。

(1)期待する結果と異なる結果になる(2)エラーになる(3)結果的には期待通りの戻り値(結果)が得られる

(1)期待する結果と異なる結果になる
引数として指定できる値として、「0」があるとき。たとえばVLOOKUP関数。最後の引数「検索の型」には、TUREまたはFALSEを指定でき、省略した場合はTRUEを指定したことになります。VLOOKUP(検索値,範囲,列番号,)とすると、FALSE:0を指定したことになります。本来、省略をして「検索値」を「範囲」の左端列のなかかから近似値で探したいところを完全一致で探すので、(たまたま)完全一致で見つかる場合のみ、期待する値が得られ、それ以外は#N/Aのエラー値になります。
これと同類は、MATCH関数。最後の引数は1,0,-1のいずれかを指定でき、省略すると1を指定したことになります。

(2)エラーになる
引数として指定できる値として、「0」がないとき・認められないとき。たとえばFIND関数。最後の引数「開始位置」は、省略した場合は1を指定したことになります。FIND(検索文字列,対象,)とすると、「開始位置」としては無効な0を指定したことになり、#VALUEのエラー値になります。

32_excel_01

これと同類は、WEEKDAY関数(エラー値は#NUM)など。

(3)結果的には期待通りの戻り値(結果)が得られる
省略した場合は、「0」を指定したことになるとき。たとえばRANK関数。最後の引数「順序」には、0かそれ以外を指定でき、省略した場合は0(降順)を指定したことになります。

 


CONTACT

お問い合わせ

業務改善に真剣に取り組む企業様。お気軽にお問い合わせください。

10:00〜17:00(土・日・祝を除く)

お客様専用電話