• ベストアンサー

VLOOKUP関数のfalseとtrueについて

falseは「偽の」とかいう意味なのに、何故,VLOOKUP関数では「完全に一致するものだけを検索する」なのですか?むしろ、trueと反対の方が合っているように思うのですが。

質問者が選んだベストアンサー

  • ベストアンサー
noname#192177
noname#192177
回答No.2

true/falseはプログラミングの世界では、yes/noというような意味で使われる言葉です。「偽の」という意味はとりあえず忘れてください。 VLOOKUPの場合このパラメータは「近似値検索を行うかどうか?」ということを指定するものです。したがって、trueは「yes=近似値検索を行う」であり、falseは「no=完全一致検索を行う」という意味になります。これですっきりしませんか? もう一つ重要なことは、一般にこのような指定(フラグと呼びます)は、「trueならオプションを追加」という意味になることが多いということです。計算機からみると完全一致検索は自分の得意な領分で非常に高速に処理できるので楽なのですが、近似値検索はとても複雑な処理が必要になり処理速度も遅くなります。ですから、明示的にそう命令されない限り完全一致検索ですませたいわけです。trueで近似検索を行うという仕様になっているのは、このようなプログラマ側の心情(と習慣)が影響しているものと思われます。 以上で回答になっているでしょうか。

hiro-aya
質問者

お礼

Excellent!!目から鱗。よくわかりました。 ありがとうございます。

その他の回答 (1)

  • xmoto
  • ベストアンサー率27% (27/98)
回答No.1

Microsoft社が定めた仕様なのだから仕方ないですね。 ソフトを使う以上、仕様に従わざるを得ませんから。 ちなみにfalseは0(ゼロ)、trueは-1に省略して入力できます。