怎么提取EXCEL单元格出现的数据?

看了别人回复的答案估计都不能解决你的问题 。如果你的问题只有一处数值,可以用公式实现,但你看你的需求是在一个字符串中(即文本中)如何在电脑上提取系统,需要提取的数值不止一处 。用公式很难实现 。下面介绍用EXCEL VBA帮你解决问题 。
【注】以下方法同样适合所有需要在一个文本中提取某几处数值的要求 。
比如我们需要将提取的字符串在A2开始输入原始的文本,右侧无限提取文本中出现的数值 。
操作方法:
一、点击【开发工具】的【查看代码】,如下图
二、双击左侧所在的工作表(即我们输入了原始数据所在的工作表)
三、复制以下代码 , 粘贴(拷贝)至右侧区域
———————代码区——————–
Sub 提取数字()
Dim i As , j As , col As ,As Long, str As , b1 As
On ErrorNext
b1 = False
‘默认从第二列开始写入数值
col = 2
‘ 获得原始数据的最后一列值
= Range(“”).End(xlUp).Row
‘开始循环原始数据
For i = 2 To
‘遍历一个单元格的每个字符
For j = 1 To Len(Cells(i, 1))
‘判断一个字符是否为整数
If Mid(Cells(i, 1), j, 1) Like “#” Then
b1 = True
‘将一个整数写入到str的最后一位中.
str = str + Mid(Cells(i, 1), j, 1)
Else
‘输出str的值到对应的单元格中
If b1 = True Then
Cells(i, col) = –str
col = col + 1
‘重新赋空值
str = “”
b1 = False
【怎么提取EXCEL单元格出现的数据?】End If
End If
‘判断最后一个数值是否在最字符串中的是末尾处,因为上面的循环没有输出,这里需要输出最后为数值的结果
If b1 = True And j = Len(Cells(i, 1)) Then
Cells(i, col) = –str
col = col + 1
str = “”
b1 = False
End If
Next j
‘重新将列恢复默认值
col = 2
Next i
End Sub
———————代码区——————–
四、运行代码:点击下图所示的按键(或按F5),执行代码
五、执行代码后所得到的结果如下图所示:
结束!
以上若有什么疑问如何在电脑上提取系统,可本人头条号后发私信给我 。欢迎相互交流 。
本文到此结束,希望对大家有所帮助 。