與 30萬 粉絲一起學Excel
活躍一下氣氛,送書活動繼續開始。老規則,從留言區随機抽取3位粉絲,贈送書籍《Excel效率手冊 早做完,不加班(函數)》。
VIP學員的問題,1級科目不變,2級科目要在前面連接1級,3級科目要在前面連接1級、2級。詳見圈住部分。
當我還沒反應過來的時候,
張哥已經寫出了一條精妙的公式。
=IFERROR(LOOKUP(1,0/FIND(A$1:A1,A2),C$1:C1)&"\","")&B2
102是1級,10202是2級,1020201是3級。1級的肯定包含在2級裡面,2級的肯定包含在3級裡面,因此這裡用FIND(A$1:A1,A2),找得到就用分隔符号\将B列的合并連接起來。
而10201、10202屬于同一級别的,用FIND的就找不到,因此顯示B列本身的值。
認識
張哥10多年,見證了他從菜鳥變成高手,随機應變能力越來越強了。
盧子再從VIP群挑選幾個跟LOOKUP+FIND有關的案例,進行鞏固一下。
1.根據項目查找本月數。
左邊是利潤表,裡面的項目正常都會多出一些無關緊要的字符。右邊是标準的項目。
項目雖然不一樣,但右邊的項目包含在左邊,因此可以使用LOOKUP+FIND。
=LOOKUP(1,0/FIND($E$2:$E$3,A2),$F$2:$F$3)
類似的簡稱、全稱互相查找,也是用這個套路。
2.根據右邊的補貨單,查找每個店鋪的補貨員。
這種也是LOOKUP+FIND,不過需要處理一些細節。直接查找的時候店鋪1會認為跟店鋪10一樣,從而導緻出錯。
隻需做小小的改變就行,後面連接一個逗号。店鋪1,和店鋪10,這樣就會認為是2個值。
也就是說,将原來的内容都連接上逗号就行。
=LOOKUP(1,0/FIND(A2
&
",",$D$3:$D$5
&
","),$E$3:$E$5)
最後再說下語法,字符少的,放在FIND的第一參數,參數可以是單元格和區域。
=LOOKUP(1,0/FIND(字符少的,字符多的),返回區域)
其實,很多公式都有固定的套路,難的是根據實際問題随機應變。
|
有話要說...