我想一次性删除一列中的所有字母。我只想保留数字。有6000个单元格,很难一一删除文本。可能吗?
Current Column
[text 123456]
[text 123456]
[text 123456]
and so on...
我想要的是
[123456]
[123456]
[123456]
and so on...
单击感兴趣的列中的任何单元格,然后运行以下简短宏:
Sub dural()
Dim rng As Range, r As Range, v As String, CH As String
Dim v2 As String
Set rng = Intersect(ActiveCell.EntireColumn, ActiveSheet.UsedRange)
For Each r In rng
v = r.Text
If v <> "" Then
v2 = ""
l = Len(v)
For i = 1 To l
CH = Mid(v, i, 1)
If IsNumeric(CH) Then
v2 = v2 & CH
End If
Next i
r.Value = v2
End If
Next r
End Sub
编辑#1:
宏非常易于安装和使用:
如果您保存工作簿,则宏将随其一起保存。如果您在2003年以后使用Excel版本,则必须将文件另存为.xlsm而不是.xlsx
删除宏:
要从Excel中使用宏,请执行以下操作:
要总体上了解有关宏的更多信息,请参见:
http://www.mvps.org/dmcritchie/excel/getstarted.htm
和
http://msdn.microsoft.com/zh-CN/library/ee814735(v=office.14).aspx
必须启用宏才能使其正常工作!
编辑#2:
要删除数字,请替换:
If IsNumeric(CH) Then
和:
If Not IsNumeric(CH) Then
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句