標題:
[發問]
請幫我說明這個MATCH函數的意義
[打印本頁]
作者:
CyaTu
時間:
2012-6-29 09:42
標題:
請幫我說明這個MATCH函數的意義
本帖最後由 CyaTu 於 2012-6-29 11:27 編輯
我在這個部落格上看到他的教學附件,便想學著做
http://www.wretch.cc/blog/HUNGCHILIN/10258332
[attach]11529[/attach]
但請問定義名稱的NO,其中
MATCH(2,1/(DATABASE!$A$1:$A$8<>"")) -1
是什麼意思呢?
為何lookup_value要尋找2
lookup_array的部分變成倒數的原因我也不明白,能否指點一下,感謝感謝!
作者:
ANGELA
時間:
2012-6-29 10:18
MATCH(2,1/(DATABASE!$A$1:$A$8 ))
這裡的2 不代表任何意義,只要是大於1的數字都成立
1除於任何數都小於等於1,所以一定找不到等於2的值,所以它會一直找到最後一個數值
這公式主要找A1到A8中含有數字的最後位置,並傳回它的位置
以上定義的名稱的目的於下列公式目的相同
=LOOKUP(2,1/(A1:A8),ROW(A1:A8))
作者:
CyaTu
時間:
2012-6-29 11:26
感謝版主的說明,
原來就是要找不到,這樣我懂了。
我原先文章的附件似乎沒有夾帶好,所以又再傳了一次,
因為範例中的MATCH函數後面,似乎有設一個不等於空白的條件,
我猜目的是讓清單增加的時候,可以自動一直抓最後一格。
但我將這個功能轉為橫式的時候卻一直不成功,連值都回傳不了,會出現N/A。
能否幫我看看哪出錯了呢?
檔案:
[attach]11530[/attach]
我的需求有兩個
1.H25可以正確的算出從D2→H2,有多少格的值
2.當清單向右延伸的時候,例如增加一欄,公式可以自動把H2變為I2
作者:
ANGELA
時間:
2012-6-29 11:43
1,這裡不可以用精確查找,參數,0要去掉。
2=MATCH(2,1/(DATA!$C$2:
$AV$2
<>""))已可適用到AV2,
作者:
CyaTu
時間:
2012-6-29 11:57
[attach]11531[/attach]
版主,刪除0了還是NA耶。
我的公式是否哪裡有錯誤?
另外公式自動抓最後一欄的問題,我發現
如果在H欄之前用插入欄位,公式就可以判斷
但如果是把清單那個藍藍的框,往右拉自動多出一欄,公式就無法隨之更新了。
但原本的教學檔案似乎都是OK的。
作者:
ANGELA
時間:
2012-6-29 12:24
這是陣列公式若不是用在名稱中,在儲存格中公式要用ctrl+shift+enter輸入
作者:
isqueen
時間:
2012-6-29 23:14
可使用工具>公式稽核>評估值公式,查看整個陣列試算過程的變化。
作者:
CyaTu
時間:
2012-7-2 15:56
也是MATCH函數的問題,
我仿照一樓的教學檔案,把欄位橫轉直,寫了一個式子,但卻找不到錯誤在哪。
[attach]11558[/attach]
我的需求是,算出從A列向右移動3欄→D列中有多少非空白的欄位
(移動"3"欄,是不一定的,到時候會使用定義去指定)
作者:
CyaTu
時間:
2012-7-3 09:53
[attach]11561[/attach]
我把我的檔案傳上來,請幫我看看。
這個雙重驗證清單的功能中,有四個名稱定義,
教學的範例,他的資料是橫列的,但我的資料是直列的。
於是我必須更改他的公式。
LIST工作表是最後想呈現的樣子;
DATA工作表則是把資料整理列出的地方。
四個名稱定義的公式,我都一個個檢查了,
最後發現命名為Heigh的公式跑出來的值不對,但我找不到原因。
請幫幫忙,感謝!
因為我還沒權限可以下載附件,請讓我知道公式的問題就好,用貼圖或是文字都好,感謝!!
作者:
HUNGCHILIN
時間:
2012-7-3 10:56
本帖最後由 HUNGCHILIN 於 2012-7-3 11:00 編輯
關於這個
HUNGCHILIN的部落格
只是個倉庫
裡面還有很多不同的驗證範例,看連結
http://www.wretch.cc/blog/HUNGCHILIN&category_id=12188609
應該有直的DATA的驗證範例
範例都太久了...很多我都忘了當初的邏輯^^...
近期非常忙碌...要麻煩各位...
手頭還有很多特殊驗證技巧檔...要找時間放...找時間下蛋...有緣的人找時間把它打破
驗證範例裡面應該有幾個檔案...定義有隱藏起來...如果找不到則需要用VBA顯示
作者:
CyaTu
時間:
2012-7-3 11:46
本帖最後由 CyaTu 於 2012-7-3 11:47 編輯
哇! 感謝HUNGCHILIN的說明,
您的部落格讓我受益良多,直式的驗證我也有下載來看過,但因為他的DATA比較簡單,只有一列,
橫式的DATA是X-Y表格的型態,比較符合我目前的需求,可增加列、也可增加欄...
我檢查過,這個驗證的部分應該沒有用到VBA,我也一個個公式丟到儲存格去解開,發現唯有我的檔案中名稱定義為Heigh的,跑不出值。
在您的原檔中,命名為MaxA
但因為直橫不同
所以您原先的MaxA寫的是
=MATCH(2,1/(OFFSET(DATABASE!
$1:$1
,
DATA,0
)<>""))
我的Heigh則改成
=MATCH(2,1/(OFFSET(DATA!
$A:$A
,
0,toClass
)<>""))
但OFFSET的那一段函數,怎麼也跑不出。
我甚至把toClass的定義直接改為數字替代看看,結果還是一樣。
真的需各位前輩幫我解惑,謝謝!
歡迎光臨 麻辣家族討論版版 (http://forum.twbts.com/)