但滿足條件的有多個。什麼條件、提取規則都不説,給個圖片能有答案嗎?清楚説明已知條件,達成什麼樣的結果,結果和已知條件有怎樣的勾稽關係,才能有針對性地給你準確的答案。
若要提取某兩個字符之間的所有字符,當中運用到MID函數以及LEFT函數。具體操作如下。
材料/工具
excel2013
=LEFT(REPLACE(A1,1,FIND(C1,A1)+LEN(C1)-1,""),3) 把Y.DF.填進C1,B1輸入上面公式! 都是很簡單的函數,樓主可以百度,一會自己就會了!
方法
比如,下圖表格數據,現在要把“共”與“,”之間的金額提取到B1單元格到B5單元格中。
B2中輸入=LOOKUP(9E+307,--MID($A2,FIND(B$1,$A2)+2,ROW($1:$100))),向右向下拖動擴展公式即可。
在這裏要運用到MID函數以及LEFT函數
=MID(A1,FIND("X",A1,1)+1,(FIND("Y",A1,1)-FIND("X",A1,1)-1)); 能力有限,只能想到這麼複雜的東西, 你也可以將X和Y替換成空格,在數據-分列-分割符號-空格,完成後就可以提取出X和Y之間的字符了。
在B1單元格輸入:=MID(A1,FIND("共",A1)+1,FIND(",",A1)-1-FIND("共",A1))
見截圖 比如提取A列中"A"字符後面的字 B2輸入 =RIGHT(A2,LEN(A2)-FIND("A",A2)) 公式下拉
公式解釋:
如下圖所示的,MID是截取字符函數,裏內的參數,第1個:A1,是要截取字符所在單元格
=MID(A2,FIND("X",A2),FIND("(",A2)-FIND("X",A2))
第2個,FIND("共",A1)+1
=MID(E1,FIND("-",E1,1)+1,FIND("-",E1,10)-FIND("-",E1,1)-1) 這麼寫吧,但是這樣有點投機取巧了,必須得是你要提取的中間那一串數都很長才行。完全適用的沒想出來,你自己看看能不能用吧。
是所截取的字符開始的位數,用FIND找出”共“的所在字符串的位數,再加上1;那麼,從表格中數據可以知道,”共“所在位數再加”1“位,就是”共“右邊的數字了。
B1輸入: =MID(A1,FIND("商家編碼",A1)+6,FIND("-",A1,FIND("商家編碼",A1)+1)-FIND("商家編碼",A1)-6) 向下填充。
第3個,FIND(",",A1)-1-FIND("共",A1)
B1輸入: =MID(A1,FIND("商家編碼",A1)+6,FIND("-",A1,FIND("商家編碼",A1)+1)-FIND("商家編碼",A1)-6) 向下填充。
是MID函數需要截取的字符個數,由FIND函數找出","所在位數減去1位後再減去由FIND函數找出"共"所在位數,就是需要截取的字符個數。
1.工作表中,按【ALT+F11】,進入VBA編輯器 2.執行主菜單“插入”——模塊 3.將下述代碼粘貼到右側編輯區 Function StrSum(r As String) As Double arr = Split(UCase(r), "X") For i = 1 To UBound(arr) StrSum = StrSum + Val(arr(i)) NextEnd Fun
公式解釋完,我們再繼續上面的操作。
B2中公式為: =LEFT(RIGHT(A2,LEN(A2)-SEARCH(":",A2)),SEARCH(":",RIGHT(A2,LEN(A2)-SEARCH(":",A2)))-1) 這段公式會提取第一個冒號和第二個冒號之間的字符,無論這兩個冒號的前面、中間、後面有多少字符,都不影響,只會提取這兩個冒號中間的
B1單元格輸入公式後,按下回車鍵,得出結果”2860元“
最左邊起取字符 =left(源數據格,提取的字符數) =left(E2,2) 表述為:從單元格A3的最左邊起,提取2個字符。 從最右邊起取字符 =right(源數據格,提取的字符數) =right(E2,2) 表述為:從E2單元格最右邊起,提取2個字符 從數據中間提取幾個字符
鼠標在B1單元格點下,再放在單元格右下角的綠色小方框上。
一、假設是要提取A1單元格字符串中第3個字符起5個字符的內容的後兩個字符的內容,則公式可以寫成 =RIGHT(MID(A1,3,5),2) 二、公式中相關函數的定義 (1)MID函數 也應用於:MIDB MID 返回文本字符串中從指定位置開始的特定數目的字符,該數目由
然後,鼠標左鍵雙擊,下方單元格即相應各自得出結果。
如下圖,B1中的公式是 =MID(A1,FIND("/",A1)+1,FIND("*",A1)-FIND("/",A1)-1) C1中的公式是 =MID(A1,FIND("*",A1)+1,FIND("L",A1)-FIND("*",A1)-1)
鼠標在其它單元格點下,完成上面的操作。
在B1單元格輸入以下公式,然後向下填充公式 =MID(A1,FIND("@",A1)+1,FIND(".",A1)-FIND("@",A1)-1) 詳見附圖
擴展閲讀,以下內容您可能還感興趣。
excel如何提取單元格中指定字符中間的內容?
B1輸入:
=MID(A1,FIND("商家編碼",A1)+6,FIND("-",A1,FIND("商家編碼",A1)+1)-FIND("商家編碼",A1)-6)
向下填充。
EXCEL中提取特定字符之間的數字並求和。
1.工作表中,按【ALT+F11】,進入VBA編輯器
2.執行主菜單“插入”——模塊
3.將下述代碼粘貼到右側編輯區
Function StrSum(r As String) As Doublearr = Split(UCase(r), "X")
For i = 1 To UBound(arr)
StrSum = StrSum + Val(arr(i))
Next
End Function
4.退出VBA編輯器,返回工作表
5.假設字符串在A列,需要在B列得到結果,則在B1輸入
=StrSum(A1)下拉填充公式即可
excel中怎麼提取從左邊指定的兩個符號中間的值
B2中公式為:
=LEFT(RIGHT(A2,LEN(A2)-SEARCH(":",A2)),SEARCH(":",RIGHT(A2,LEN(A2)-SEARCH(":",A2)))-1)
這段公式會提取第一個冒號和第二個冒號之間的字符,無論這兩個冒號的前面、中間、後面有多少字符,都不影響,只會提取這兩個冒號中間的所有字符。提取出來的數字是文本類型的數字。
假如你需要提取出來的是數值類型的數字的話,就在公式前面加兩個負號,如下:
=--LEFT(RIGHT(A2,LEN(A2)-SEARCH(":",A2)),SEARCH(":",RIGHT(A2,LEN(A2)-SEARCH(":",A2)))-1)
excel中如何截取指定字符之間的字符
最左邊起取字符
=left(源數據格,提取的字符數)
=left(E2,2)
表述為:從單元格A3的最左邊起,提取2個字符。
從最右邊起取字符
=right(源數據格,提取的字符數)
=right(E2,2)
表述為:從E2單元格最右邊起,提取2個字符
從數據中間提取幾個字符
=mid(E2,1,9)
表述為:提取單元格E2中第一位起後面9位。
=mid(sheet1! E2,1,9)
表述為:提取sheet1表的單元格E2中第一位起後面9位
先從左取字符,再從右取字符
=RIGHT(LEFT(E2,5),3)
表述為:首先從E2單元格第一個字符從左往右取5個字符,然後再對取出來的5個字符從右向左取3個字符。
去掉字符前面的幾個字符
=RIGHT(E2,LEN(E2)-2)
表述為:從單元格E2字符的右邊起,提起所有的字符數,去掉後面兩個字符。LEN表示返回字符串中的字符數。
去掉字符後面的幾個字符
=LEFT(E2,LEN(E2)-2)
表述為:從單元格E2字符的左邊起,提起所有的字符數,去掉後面兩個字符。
Excel函數提取字符串中選取字符的後兩個字符
一、假設是要提取A1單元格字符串中第3個字符起5個字符的內容的後兩個字符的內容,則公式可以寫成
=RIGHT(MID(A1,3,5),2)
二、公式中相關函數的定義
(1)MID函數
也應用於:MIDB
MID 返回文本字符串中從指定位置開始的特定數目的字符,該數目由用户指定。
MIDB 返回文本字符串中從指定位置開始的特定數目的字符,該數目由用户指定。此函數用於雙字節字符。
語法
MID(text,start_num,num_chars)
MIDB(text,start_num,num_bytes)
Text 是包含要提取字符的文本字符串。
Start_num 是文本中要提取的第一個字符的位置。文本中第一個字符的 start_num 為 1,以此類推。
Num_chars 指定希望 MID 從文本中返回字符的個數。
Num_bytes 指定希望 MIDB 從文本中返回字符的個數(按字節)。
説明
如果 start_num 大於文本長度,則 MID 返回空文本 ("")。
如果 start_num 小於文本長度,但 start_num 加上 num_chars 超過了文本的長度,則 MID 只返回至多直到文本末尾的字符。
如果 start_num 小於 1,則 MID 返回錯誤值 #VALUE!。
如果 num_chars 是負數,則 MID 返回錯誤值 #VALUE!。
如果 num_bytes 是負數,則 MIDB 返回錯誤值 #VALUE!。
(2)RIGHT函數
也應用於:IGHTB
RIGHT 根據所指定的字符數返回文本字符串中最後一個或多個字符。
RIGHTB 根據所指定的字符數返回文本字符串中最後一個或多個字符。此函數用於雙字節字符。
語法
RIGHT(text,num_chars)
RIGHTB(text,num_bytes)
Text 是包含要提取字符的文本字符串。
Num_chars 指定希望 RIGHT 提取的字符數。
Num_bytes 指定希望 RIGHTB 根據字節所提取的字符數。
説明
Num_chars 必須大於或等於 0。如果 num_chars 大於文本長度,則 RIGHT 返回所有文本。如果忽略 num_chars,則假定其為 1。