返回列表 上一主題 發帖

[發問] 多重條條件查詢

回復 1# aer

你不是已經寫好了嗎?
{...} 表示需要用 CTRL+SHIFT+ENTER 三鍵輸入公式

TOP

  1. H6 =LOOKUP(,0/(($D6=號碼資料庫!$A$2:$A$1999)*($E6=號碼資料庫!$B$2:$B$1999)*($F6>=號碼資料庫!$C$2:$C$1999)*($F6<=號碼資料庫!$D$2:$D$1999)),號碼資料庫!E$2:E$1999)
  2. 右拉
複製代碼
{...} 表示需要用 CTRL+SHIFT+ENTER 三鍵輸入公式

TOP

回復 5# aer


>> 再請教您 lookup 公式中的 lookup value 不填任何值是代表什麼意思呢?

lookup value 不填任何值是代表 0
第二項參數內的公式經比對後為 0 或 錯誤值,lookup value 用0可以找到其中一項,若用1可以找到最後一項。一般情況只有一個 0 所以習慣不下參數。
{...} 表示需要用 CTRL+SHIFT+ENTER 三鍵輸入公式

TOP

回復 7# c_c_lai

>> $D6=號碼資料庫!$A$2:$A$1999)*($E6=號碼資料庫!$B$2:$B$1999)
>> 為何彼此要用乘 (*) 來串連,然後又用零 (0) 來被除?
>> LOOKUP(, 0  內的 ",0" 這又是指的甚麼?

c_c_lai大 太客氣了,大家相互學習互通有無

H6 =LOOKUP(,0/(($D6=號碼資料庫!$A$2:$A$1999)*($E6=號碼資料庫!$B$2:$B$1999)*($F6>=號碼資料庫!$C$2:$C$1999)*($F6<=號碼資料庫!$D$2:$D$1999)),號碼資料庫!E$2:E$1999)

上式中紅色字為判斷式,整個式子構架如下
H6 =LOOKUP(,0/(判斷式陣列),號碼資料庫!E$2:E$1999)
H6 =LOOKUP(,0/(0;1;0;1;0;...;0),號碼資料庫!E$2:E$1999)
0/{0;1}得情況如下 0/1 =0 ; 0/0 = #DIV/0!,上式如下
H6 =LOOKUP(,0/(#DIV/0!;0;#DIV/0!;0;#DIV/0!;...;#DIV/0!),號碼資料庫!E$2:E$1999)
整個 lookup_vector 就會變成只有 0 與 錯誤值#DIV/0!所組成的陣列。
利用LOOKUP的函數特性 - 錯誤值 會忽略,所以查詢值用 >= 0 的數值都可以

如果找唯一值,lookup_vector 內只有一個 0 值,所以lookup_value用0就可以,0為內定值就不用輸入
如果不是唯一值,可以用 1( >0的任一值都可以)找最後一值,用 0 會找到第一組0的最後一個。
{...} 表示需要用 CTRL+SHIFT+ENTER 三鍵輸入公式

TOP

        靜思自在 : 忘功不忘過,忘怨不忘恩。
返回列表 上一主題