アプリ版:「スタンプのみでお礼する」機能のリリースについて

人の作ったエクセルのワークシートをみていたところ

=VLOOKUP(A40,M59:N71,2,-1)

という式がありました。
これまでVLOOKUPでは、

=VLOOKUP(A40,M59:N71,2,FALSE)
=VLOOKUP(A40,M59:N71,2,0)

=VLOOKUP(A40,M59:N71,2,TRUE)
=VLOOKUP(A40,M59:N71,2,1)

ならよく見るのですがマイナスの引数は初めてです。
これはどういう意味なのでしょうか?

A 回答 (5件)

戻り値です。


False 0
True -1
    • good
    • 0
この回答へのお礼

有難うございます。
-1もTRUEでしたか。

お礼日時:2006/03/01 16:44

 最近は、FALSEが0、TRUEが1のようですが、私のような古い世代では、


 FALSE 0
 TRUE -1
で考えています。

 これは、多桁の2進数の表現から来ているもので、
FALSE 00000000
TRUE 11111111
ということです。
2進数では、最初のビットはマイナスの符号を表しますので、
すべてのビットを立てると-1になります。

論理型変数を持たない古いBASICなどでは、TRUEの戻り値は-1でした。
    • good
    • 0
この回答へのお礼

有難うございました。

お礼日時:2006/03/01 16:51

他の検索関数でMATCH関数は、照合の型に1,0,-1があり、それと混同しているのではないでしょうか。

(詳細はHELPを参照してください)
VLOOKUP関数の検索の型は、TRUE(1)とFALSE(0)しかありませんので、0以外の数値は全てTRUEとなります。
    • good
    • 0

検索型にはTRUEになるものかFALSEになる何かを入れればいいので、-1でもTRUEとして扱われます。



ふつう1か0を使いますが、ちょっとひねってあるとでもいうんでしょうか。

試しに、あるセルに「0」と入力し、
その否定を求める、NOT()という関数を使って、0と入れたセルの否定を別のセルで表示させてみてください。
0以外はすべてTRUEと表示されるはずです。
-1と入れると、その否定はFALSEになります。
    • good
    • 0
この回答へのお礼

NOT()やってみました。
有難うございます。
-1もTRUEだったんですね。

お礼日時:2006/03/01 16:50

最後の部分は検索の方になるので


0が入った場合にはFALSEにそれ以外の数字が入った場合には
TRUEになりますので、-1の場合もTRUEに扱われます。
    • good
    • 0
この回答へのお礼

有難うございます。
-1もTRUEだったんですね。

お礼日時:2006/03/01 16:45

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!