當前位置:首頁 » 表格製作 » 怎樣從一段文字里提取數字
擴展閱讀
怎樣把文檔字體變大方法 2024-11-12 03:10:58

怎樣從一段文字里提取數字

發布時間: 2022-01-19 20:57:42

① Excel如何取出一段文字中的數字

提供如下兩種方式:VBA公式法和Word通配符法。第一種簡潔,第二種則容易理解。

這兩種操作不限定字元位置和位數等。如果是固定位數、固定位置的字元,直接使用提取函數(left, right和mid即可搞掂)。

一、VBA公式法

  1. Alt+F11,打開VBA編輯器

  2. 點擊左側sheet1標簽->插入->模塊

  3. 粘貼如下代碼到其中

  4. 回到Excel表中即可使用該公式(Num_Get())。



FunctionNum_Get(NumAsString)
DimiAsSingle
Num_Get=""
Fori=1ToLen(Num)
IfAsc(Mid(Num,i,1))>=48AndAsc(Mid(Num,i,1))<=57Then
Num_Get=Num_Get&Mid(Num,i,1)
EndIf
Next
EndFunction


二、Word通配法:

  1. 復制字元到word中

  2. 調出替換對話框(Ctrl+H)

  3. 按照如下設定

    勾選使用通配符

    查找內容欄輸入[!0-9]

    替換欄保持為空

  4. 點擊全部替換,word中非數字字元已經全部替換。

  5. 再復制字元粘貼到Excel中(另起一列)。

② 如何用公式在一段文字中提取多個數字

從數據上看,日期格式是固定的,都從2開始。試試
=MID(A1,FIND("2",A1),8)
其中原來的數據在A列,公式在B列

③ WPS里一段文字如何提取想要的數字

以WPS2019為例,

WPS里一段文字如何提取想要的數字

可直接在文檔助手選項卡下,單元格處理,選擇保留內容

④ 如何在WPS中一段字中提取數字

=MAX(IFERROR(--MID(A1,FIND("元",A1)-ROW($1:$10),ROW($1:$10)),))
ctrl+shift+回車

⑤ EXCEL中在一段文字中提取數字,並求和

如果A2的內容是油錢12元,那麼公式=MIDB(A2,SEARCHB("?",A2),2*LEN(A2)-LENB(A2))可以得到12數字
SEARCHB("?",A2),它是找到第一個非中文字元的位置,在這里是5,油錢是中文字元,每個中文字元長度是2,因此第一個數字1,它的位置是5,即SEARCHB("?",A2)=5
2*LEN(A2)-LENB(A2),這個用於計算所包含的數字個數,對於Len函數,一個數字和中文都是1,對於LenB函數,中文是2,數字是1
MIdB(A2,5,2)意思是第5和第6字元,即12
如果是油錢my12元,結果是my12,而不是12
--------------
你的Excel中一個單元格中包含多個數字,我估計很難單純用公式完成
而且4人飯錢12元,4人中的4不應該計算

⑥ EXCEL 如何從一段文字、數字中取出文字

如果你其他數據都是這種規律的話,用下面公式就行

B2=RIGHT(A1,LEN(A1)-FIND("+",SUBSTITUTE(A1," ","+",2)))

⑦ 按鍵精靈如何在一段文字內提取數字

用正則表達式,兩下就好了。

⑧ VB中如何從一段話中提取數字

看看這兩個函數.應該能解決你的問題了.

Val 函數

返回包含於字元串內的數字,字元串中是一個適當類型的數值。

語法

Val(string)

必要的 string 參數可以是任何有效的字元串表達式.

說明

Val 函數,在它不能識別為數字的第一個字元上,停止讀入字元串。那些被認為是數值的一部分的符號和字元,例如美圓號與逗號,都不能被識別。但是函數可以識別進位制符號 &O(八進制)和 &H(十六進制)。空白、製表符和換行符都從參數中被去掉。

下面的返回值為 1615198:

Val(" 1615 198th Street N.E.")

在下面的代碼中,Val 為所示的十六進制數值返回十進制數值 -1。

Val("&HFFFF")

注意 Val 函數只會將句點(.)當成一個可用的小數點分隔符。當使用不同的小數點分隔符時,如在國際版應用程序中,代之以 CDbl 來把字元串轉換為數字。

Mid 函數

返回 Variant (String),其中包含字元串中指定數量的字元。

語法

Mid(string, start[, length])

Mid 函數的語法具有下面的命名參數:

部分 說明
string 必要參數。字元串表達式,從中返回字元。如果 string 包含 Null,將返回 Null。
start 必要參數。為 Long。string 中被取出部分的字元位置。如果 start 超過 string 的字元數,Mid 返回零長度字元串 ("")。
length 可選參數;為 Variant (Long)。要返回的字元數。如果省略或 length 超過文本的字元數(包括 start 處的字元),將返回字元串中從 start 到尾端的所有字元。

說明

欲知 string 的字元數,可用 Len 函數。

注意 MidB 函數作用於字元串中包含的位元組數據,如同在雙位元組字元集(DBCS)語言中一樣。因此其參數指定的是位元組數,而不是字元數。對於使用 MidB的示例代碼,請參閱示例主題中的第二個

⑨ execl在一段文字中提取數字的問題

把你的文字放在A1單元格
A2=IF(ISERROR(FIND("斤",$A$1,1)),0,FIND("斤",$A$1,1)) 說明第一個斤出現的位置
A3=IF(ISERROR(FIND("斤",$A$1,IF(A2=0,0,A2+1))),0,FIND("斤",$A$1,IF(A2=0,0,A2+1)+1)) 說明第二個斤出現的位置
... 說明第三.四.五等下拉
B2=IF(ISERROR(VALUE(MID($A$1,A2-4,4))),IF(ISERROR(VALUE(MID($A$1,A2-3,3))),IF(ISERROR(VALUE(MID($A$1,A2-2,2))),IF(ISERROR(VALUE(MID($A$1,A2-1,1))),0,VALUE(MID($A$1,A2-1,1))),VALUE(MID($A$1,A2-2,2))),VALUE(MID($A$1,A2-3,3))),VALUE(MID($A$1,A2-4,4)))
B3=IF(ISERROR(VALUE(MID($A$1,A3-4,4))),IF(ISERROR(VALUE(MID($A$1,A3-3,3))),IF(ISERROR(VALUE(MID($A$1,A3-2,2))),IF(ISERROR(VALUE(MID($A$1,A3-1,1))),0,VALUE(MID($A$1,A3-1,1))),VALUE(MID($A$1,A3-2,2))),VALUE(MID($A$1,A3-3,3))),VALUE(MID($A$1,A3-4,4)))
...下拉
B10=SUM(B2:B9)