今天一位做系統開發的同事,給我以下樣表:

由于導入系統需要,需要把每個“檔號”的最后一個“-”符號及以后內容的內容去掉(上圖中的紅色部分)。
需要解決兩個難點:
數據有幾萬行,不可能手工去除;
每個“檔號”長度不一,不能用簡單的MID、RIGHT、LEFT等函數。
給出兩種解決方案:
快速填充;
公式。
快速填充
復制出第一個,Ctrl+E快速填充,如下動圖:

快速填充雖然簡單,但有版本要求。用的EXCEL2016可以使用,EXCEL2013 沒有用過,據說可以。但2010版本及以下肯定是不能用快速填充的。
公式實現
在B2單元格輸入公式:
=MID(A2,1,LOOKUP(9^9,FIND(“-“,A2,ROW($1:$30)))-1)
可得第一個結果,公式向下填充即可實現所有檔號修改。

其中查找到第30位,是因為“檔號”最長不過30位,此數值可以根據實際更改。
LOOKUP(9^9,FIND(“-“,A2,ROW($1:$30))):
在上述數值中查找一個極大值9^9,因為查不到這個值,所以返回最后一個值20.
MID(A2,1,LOOKUP(9^9,FIND(“-“,A2,ROW($1:$30)))-1):
從A2字符串中從第一位取到第19位,即得結果。






