查找并替换数字为vba中不起作用的文本
我有一张数据表,在D列中是数字(例如15、16)。出于数据分析目的,我需要将它们替换为文本,以便它们可以显示为015,016。对于其余的数字,我可以将它们保留为文本,但不能添加前导零 我当前的代码只将它们更改为文本,但未能添加我需要的前导零。再说一次,因为我只需要15到015,16到016,这就是我设置代码的方式。其余部分可以是不带前导零的文本查找并替换数字为vba中不起作用的文本,vba,Vba,我有一张数据表,在D列中是数字(例如15、16)。出于数据分析目的,我需要将它们替换为文本,以便它们可以显示为015,016。对于其余的数字,我可以将它们保留为文本,但不能添加前导零 我当前的代码只将它们更改为文本,但未能添加我需要的前导零。再说一次,因为我只需要15到015,16到016,这就是我设置代码的方式。其余部分可以是不带前导零的文本 Sub test() With Worksheets("RTLDC") Dim LR99 As Long, xy As Long, ij As
Sub test()
With Worksheets("RTLDC")
Dim LR99 As Long, xy As Long, ij As Long
Dim fndList As Variant, rplcList As Variant
LR99 = Range("A" & Rows.Count).End(xlUp).Row
fndList = Array("15", "16")
rplcList = Array("015", "016")
Range("D:D").NumberFormat = "@"
For xy = LBound(fndList) To UBound(fndList)
For ij = 1 To LR99
If Range("D" & ij).Value = fndList(xy) Then
Range("D" & ij).Value = rplcList(xy)
End If
Next ij
Next xy
End With
End Sub
第一张图片是我运行vba后看到的,第二张图片是我渴望的结果
这是一个格式范围问题,请尝试按单元格设置格式
范围(“D”和ij).NumberFormat=“@”
如果你使用
列(“B:B”).NumberFormat=“@”
参考这是一个格式范围问题,请尝试按单元格设置格式
范围(“D”和ij).NumberFormat=“@”
如果你使用
列(“B:B”).NumberFormat=“@”
参考它看起来像一个单元格格式问题。我认为它应该是文本而不是数字。如果您尝试了
范围(“D”&ij)。NumberFormat=“@”
?谢谢您,它工作起来很有魅力!!非常感谢。这看起来像是一个单元格格式问题。我认为它应该是文本而不是数字。如果您尝试了范围(“D”&ij)。NumberFormat=“@”
?谢谢您,它工作起来很有魅力!!感谢。或更短的:[B:B]。NumberFormat=“@”
或更短的:[B:B]。NumberFormat=“@”