如何从excel中的文本中提取逗号和小数位

时间:2016-02-13 15:19:43

标签: excel excel-formula

我有一个我要导入excel的文档,其中包含类似的内容(GHC33.45)。如何仅将数字和小数位数提取到另一个单元格中。 (有些情况有; Ghc234.00,Ghc2,300.00)我希望能够保留逗号和小数位。

我已经看到了这样一个问题的答案,但答案总是适合于被问到的问题。

2 个答案:

答案 0 :(得分:0)

如果您希望丢弃前面的三个字符,那么使用 A1 中的数据,在另一个单元格中输入:

=MID(A1,4,9999)

enter image description here

如果您的数据在数字前后有可变数量的垃圾字符,那么您可以使用以下用户定义函数:

Public Function eXtractor(rin As Range) As String
    Dim v As String, L As String, i As Long, CH As String
    eXtractor = ""
    v = rin.Text
    L = Len(v)

    For i = 1 To L
        CH = Mid(v, i, 1)
        If CH Like "[0-9]" Or CH = "," Or CH = "." Then
            eXtractor = eXtractor & CH
        End If
    Next i
End Function

答案 1 :(得分:0)

您可以分两步完成此操作:

  1. 首先将数据原样加载到一列

  2. 添加一个列,您可以在其中放置公式以从第一列中提取数值数据

  3. 假设您的数据已加载到A列中,请将公式放在B列中。在B1中,您可以将其放入:

    =NUMBERVALUE(MID(A1;4;10000), ".", ",")
    

    首先获取A1中的所有文本,前3个字符除外,然后将其转换为数字,指定小数点(.)和千位分隔符(,)在A列中。

    将此公式拖动到整个B列,直到A列中数据的行结束。

    然后将该列格式化为具有2位小数的数字格式(或您想要显示的任何内容)。

    通过这种方式,您可以使用B列中的值进行计算,例如使用=SUM(B1:B999)进行总计