close

3085

Excel二數字加單位合計

沈文程:錦子老師您好,請教一下,如果A欄顯示每箱中包含的數量及單位,B欄顯示箱數,我想要在金C欄顯示總數及A欄的單位,不知要如何設計公式。謝謝!

image

錦子老師:這個問題解決方法如下:

步驟1:點取C2儲存格,輸入公式:

=-LOOKUP(9^9,-MIDB(A2,SEARCHB("?",A2),ROW($1:$20)))*B2&SUBSTITUTE(SUBSTITUTE(A2,"/",""),-LOOKUP(9^9,-MIDB(A2,SEARCHB("?",A2),ROW($1:$20))),"")

再將公式複製到C3:C10儲存格。

image

【公式說明】

=-LOOKUP(9^9,-MIDB(A2,SEARCHB("?",A2),ROW($1:$20)))*B2&SUBSTITUTE (SUBSTITUTE(A2,"/",""),-LOOKUP(9^9,-MIDB(A2,SEARCHB("?",A2),ROW($1:$20))),"")

公式1SEARCHB("?",A2)

A2儲存格內容中尋找數值起始位元。

公式2-MIDB(A2,公式1,ROW($1:$20))

這裡使用MIDB,而不是使用MID,是為了對應FINDB,通過位元組位置截取部分文字。ROW($1:$20)傳回有序數組{1-20},作為MIDB函數的第三個參數(要提取的位元組數),即分別提取1-100個字元,MIDB函數的功能就是從公式1確定的起始位置開始,分別從A2儲存格文字中截取長度為1-20個位元組的20個不等長度字串,而-MIDB則是將不等長度字串執行減法運算,使得非數值資料因無法運算而報錯為#VALUE!,進而將不等長度字串轉化為純數值和錯誤值#VALUE!組成的新常量陣列。

公式3-LOOKUP(9^9,公式2)

LOOKUP查詢有三個特性:

1.預設查詢範圍是升冪的,即越往後值越大。

2.傳回值應小於且最接近於查詢值。

3.忽略查詢範圍中的錯誤值。

由此,我們賦予查詢值一個極大數9^9,因為LOOKUP的特性1,所以查詢範圍的最後一個非錯誤值為最大值,即該值為傳回值。LOOKUP的這幾個特性,完美地做到了忽略錯誤值取最後一個有效值!

公式4SUBSTITUTE(A2,"/","")

A2儲存格中的「/箱」字串刪除。

公式5SUBSTITUTE (公式4,公式3,"")

公式4中含有公式3的內容部份刪除,這是為了刪除數字,留下單位字串。

以上就是今天主要學習的知識點,希望對大家有所幫助~~有什麼問題歡迎留言,我會儘量及時的給大家答覆~~

更多相關影片教學:請點我

更多相關文章:請點我


arrow
arrow
    創作者介紹

    錦子老師 發表在 痞客邦 留言(0) 人氣()