Excel 用相同数量的字符替换值

Excel 用相同数量的字符替换值

我们使用的是所有员工都可见的 Excel 报告。其思路是将单元格值中的每个数字替换为数字“1”。它们可以指示数值,即百位数或千位数,但不能指示确切的金额。

以下是一个例子:

ORD          SUPPLY         RATE
3430         329961.25      95.07

应转换为

ORD          SUPPLY         RATE
1111         111111.11      11.11

这可能吗?怎么做?我试过替换并计算要替换的数字等,但无法得到明确的答案。

答案1

选择您想要转换的单元格并运行这个简短的宏:

Option Explicit
Sub One_ification()
    Dim r As Range, v As String
    Dim L As Long, i As Long, CH As String

    For Each r In Selection
        v = r.Text
        L = Len(v)
        For i = 1 To L
            CH = Mid(v, i, 1)
            If CH Like "[0-9]" Then Mid(v, i, 1) = "1"
        Next i
        r.Value = v
    Next r
End Sub

前:

在此处输入图片描述

之后:

在此处输入图片描述

相关内容