close
標題:

aa.jpg

 

此文章來自奇摩知識+如有不便請留言告知

EXCEL~IF涵數只能用7層??

發問:

若我有超過7組的數值該怎麼處理? 價格%數 10002 20004 30006 40008 500010 600012 700014 800016 900018 1000020 1100022 1200024 在此輸入價格↓%數自動跳出來↓ 1000 2 謝謝>"< 更新: 沒有統一規律的,我試過G大的方法了,還是沒辦法耶,我的需要20層以上,好像打到第八層時就不行了,說超出巢狀什麼的,至於諒哥的LOOKUP 也不行.........><"

最佳解答:

在excel 要將資料分級 除了用 IF 之外,有三個層次 1. 有規律性的,就找出規律,寫個公式,最為簡潔。 2. 一對一的資料比對,用 Lookup 函數,就非常漂亮。 3. 資料比較複雜的,就要用到 Vlookup, 需要找一個地方寫「對照表」,也還是蠻清楚一目了然的。 讀一下,我以前回答過的 Excel 的資料分級程式http://tw.group.knowledge.yahoo.com/excel-learn/article/view?aid=10 1. 分數分級http://tw.knowledge.yahoo.com/question/question?qid=1009021210683 2. 抽成 的分級http://tw.knowledge.yahoo.com/question/question?qid=1009021605112 3. 時間分段 http://tw.knowledge.yahoo.com/question/question?qid=1609021604739

其他解答:

如果版主的問題是有統一規律的話,則其他大師們的回答已經很詳細了,應該就可以解決您的問題了。 但是如果版主的問題不是有統一規律的話,而是有區間性,非得用到7個以上的IF的話,例如: 價格1000以下,一律20元(1000*2%) 價格1001~2000,一律40元(2000*2%) 價格2001~3000,一律60元(3000*2%) ... 那就非得要用一些怪招了, 一般而言,if函數習慣的寫法都是B1=if(A1<=1000,20,if(A1<=2000,40,if(....))) 而怪招就是在第2個引數中也加入if函數,例如: B1=if(A1<=5000,if(A1<=1000,20,if(A1<=2000,40,if(A1<=3000,60,if(A1<=4000,80,100)))), if(A1<=6000,120,if(A1<=7000,140, if(...))))這樣就可以超出7層了 就請版主依需要自行採用 2009-09-18 22:02:55 補充: 謝謝rc08大大的意見,此例依您的方式確實是非常簡潔,您的功力確實非常深厚。 我只是想要嘗試回覆版主的題目,說明在某些特殊的情況,如果真的需要超過if函數7層限制時可以如何寫法。 2009-09-19 20:32:45 補充: 我就暫以前例寫了一個範例,至少可以區分22種 參考範例http://www.go2upload.com/file/2/4ebce7.html 其實每個if函數的第2個引數都可以再改用if函數,如此就可以很多很多層,我的預估是可以達到2^7=128層,但是也沒有真正實驗過。 但這其實不是很有結構的寫法,如果問題真的這麼複雜的話,應該嘗試用寫程式或至少VBA的方式,只是因為我不是一個專業的資訊人員,只是因工作常用Excel而喜歡研究罷了,所以只會這種怪招,並與大家分享,將來如果有閒的話,我想我會去學VBA吧! 2009-09-20 00:54:08 補充: 公道伯整理的真好 如果是有規律性或可以列表查詢的真的就該用這些方式去處理,邏輯性才會清楚,後續才好追蹤。 我的方法只應該用在非上列情況可以處理時,才使用,只是那時好像也應該是用寫程式的方式才是較好的選擇吧! 8-)|||||那用lookup試試,在a15儲存格輸入價格 在 b15自動帶出 %數 假設如題 1.在a2~a13輸入 價格 1000~12000 2.在b2~b13輸入 %數 2~24 A15儲存格人工輸入 價格 B15儲存格 自動帶出 %數 公式內容 為 =LOOKUP(a15,A2:A13,B2:B13) 試試吧!FBEFE3C2E0474026
arrow
arrow

    ceui4w8 發表在 痞客邦 留言(0) 人氣()