我有一列看起来像这样:
A
1 om2222prakash
2 kumar83566
3 222gsrana
4 k4566hhhh23
Run Code Online (Sandbox Code Playgroud)
如何仅找出 A1、A2、A3 和 A4 中的数字数据?我正在使用 Microsoft Excel 2007,并希望输出如下所示:
A
1 2222
2 83566
3 222
4 456623
Run Code Online (Sandbox Code Playgroud)
小智 3
好吧,用ALT+打开 VBE(Visual Basic 编辑器) F11。在 VBA 项目资源管理器中右键单击并添加一个Module
.
复制并粘贴以下代码,然后点击F5运行宏。
Option Explicit
Sub GetNumbers()
Dim uColumn As String
' if your data is in a different column then change A to some other letter(s)
uColumn = "A"
Dim i As Long, j As Long, r As Range
For i = 1 To Range(uColumn & Rows.Count).End(xlUp).Row
Set r = Range(uColumn & i)
Dim tmpStr As String
tmpStr = vbNullString
For j = 1 To Len(r)
If IsNumeric(Right(Left(r, j), 1)) Then tmpStr = tmpStr & Right(Left(r, j), 1)
Next j
r.NumberFormat = "@"
r = tmpStr
Next i
End Sub
Run Code Online (Sandbox Code Playgroud)
有一个名为 的变量uColumn
。它A
当前已指定为列。如果您的数据位于不同的列中,则将 更改为A
您的列字母
希望这可以帮助