このエントリーをはてなブックマークに追加このエントリをつぶやく

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

2014年 10月 11日 Excel Tips

エクセルセミナーはこちら
エクセルのTipsはこちら
無料セミナーはこちら

 

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

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(降順)を指定したことになります。

 

エクセルセミナーはこちら
エクセルのTipsはこちら
無料セミナーはこちら

このエントリーをはてなブックマークに追加このエントリをつぶやく

月別アーカイブTopics別アーカイブ