将列的单元格值中的某些字母更改为公式

时间:2016-11-15 18:15:18

标签: excel

考虑具有导入值27.873 M的单元格,其中M代表百万。它实际上很多,并且无法手动更改它们。

是否有任何宏或VGA跟踪其中的M字母,删除它,然后将单元格的值乘以1,000,000,以便最终值变为27,873,000

2 个答案:

答案 0 :(得分:0)

要修复数据"就地",请运行以下短宏:

Sub DataFixer()
    Dim r As Range

    For Each r In ActiveSheet.UsedRange
        If Right(r.Value, 1) = "M" Then
            r.Value = CLng((Trim(Replace(r.Value, "M", "")))) * 1000000
        End If
    Next r
End Sub

答案 1 :(得分:0)

您可以在空列中使用此公式:

=LEFT(A2,FIND(" ",A2))*CHOOSE(MATCH(RIGHT(A2,1),{"M","K"},0),10^6,10^3)

enter image description here

只需添加{}中的字母,然后添加我们乘以该数字的值。

修改

如果它只是10 ^ 3的组,那么你可以将公式简化为:

=LEFT(A1,FIND(" ",A1))*10^(MATCH(RIGHT(A1,1),{"K","M","B"},0)*3)
相关问题