返回列表 上一主題 發帖

比對並判斷顯示訊息問題

比對並判斷顯示訊息問題

我有設定Excel函數,但很快就卡到了,而且我都一直用IF的方式循環,但還是錯誤
=IF(MID(B5,10,4)=MID(H5,10,4),IF(MID(B5,10,5)=MID(H5,10,5),"",IF(MID(B5,14,14)<>MID(H5,14,14),"版本升級",IF(MID(B5,10,5)<>MID(H5,10,5),"更改料號",IF(B5="",IF(H5<>"","新增料號","刪除料號"))))))

我想設定的條件是
當B欄比對H欄時
1.最後一碼不一樣,F欄顯示"版本升級"
2.後面五碼不一樣,F欄顯示"更改料號"
3.當B欄與H欄數字完全一樣時,F欄顯示""
4.當B欄有資料,H欄是空白,F欄顯示"刪除料件"
5.當H欄有資料,B欄是空白,F欄顯示"新增料件"

想要的畫面

1111.jpg
2017-1-21 15:41


EXCEL_函數問題.rar (34.12 KB)
Just do it.

回復 1# jsc0518
=IF(B3=H3,"",IF(AND(B3="",H3<>""),"新增料件",IF(AND(B3<>"",H3=""),"刪除料件",IF(AND(LEFT(B3,13)=LEFT(H3,13),RIGHT(B3,1)<>RIGHT(H3,1)),"版本升級",IF(AND(LEFT(B3,9)=LEFT(H3,9),RIGHT(B3,5)<>RIGHT(H3,5)),"更改料號","?")))))
{...} 表示需要用 CTRL+SHIFT+ENTER 三鍵輸入公式

TOP

回復 2# ML089


    ML089,感謝您提供的公式,我會好好學習。謝謝!
Just do it.

TOP

回復 1# jsc0518

在簡化一下公式
=IF(AND(B3="",H3<>""),"新增料件",IF(AND(B3<>"",H3=""),"刪除料件",LOOKUP(,0/(LEFT(B3,{9,13,14})=LEFT(H3,{9,13,14})),{"更改料號","版本升級",""})))
{...} 表示需要用 CTRL+SHIFT+ENTER 三鍵輸入公式

TOP

再簡化

=IF(COUNTA(B3,H3)=1,IF(B3="","新增料件","刪除料件"),LOOKUP(,0/(LEFT(B3,{9,13,14})=LEFT(H3,{9,13,14})),{"更改料號","版本升級",""}))
{...} 表示需要用 CTRL+SHIFT+ENTER 三鍵輸入公式

TOP

回復 5# ML089

請問 --> (LEFT(B3,{9,13,14}) 這段的意思是?
另外 { } 這是代表?
Just do it.

TOP

回復 5# ML089


您好,可以教我一下
LOOKUP(,0/(LEFT(B3,{9,13,14})=LEFT(H3,{9,13,14})),{"更改料號","版本升級",""}
用法及意思嗎
Just do it.

TOP

http://blog.xuite.net/hcm19522/twblog/482139178

TOP

回復 8# jsc0518

請問 --> (LEFT(B3,{9,13,14}) 這段的意思是?
另外 { } 這是代表?

{ } 是陣列運算符號,LEFT(B3,{9,13,14}) 表示為 LEFT(B3,9) 、LEFT(B3,13) 、LEFT(B3,14) 三個陣列項目
{...} 表示需要用 CTRL+SHIFT+ENTER 三鍵輸入公式

TOP

回復 5# ML089


ML089  您好

若是要在新增條件,我要如何更改公式? (感謝您的教導)
版本升級  --> 最後一碼不一樣,且最後一碼數字差距為+1
更改料號  -->  最後一碼不一樣,且最後一碼兩筆數字差距有2以上
更改料號  -->  後面九碼不一樣
如附圖

新增兩條件

Noname.jpg
2017-1-23 20:03
Just do it.

TOP

        靜思自在 : 滴水成河。粒米成蘿,勿輕己靈,勿以善小而不為。
返回列表 上一主題