搜索
写经验 领红包
 > 知识

vba提取字符串中的数字这么做就是简单的(vba提取字符串中的某几个字符)

导语:VBA提取字符串中的数字,这么做就是简单

字符串操作中,无非就是文字、符号和数字。

如何在一个字符串中找出数字呢?本节就介绍一下方法。

如下图所示,提取了一些字符串中的数字。

其实际上就是对字符串中的每个字符进行对比操作,然后把数字单独找出来。

原理就是这么简单。

关键是如何实现对数字的判断。

我们做了一些代码来进行判断:

Private Sub CommandButton1_Click()Dim r As RangeSet r = Range()Dim i As Integer, ix As Integerix = r.CountDim x As Integer, xx As IntegerDim xNumb As StringFor i = 1 To ix    xNumb =     xx = VBA.Len(r.Item(i))    For x = 1 To xx        If VBA.Asc(VBA.Mid(r.Item(i), x, 1)) >= 48 And VBA.Asc(VBA.Mid(r.Item(i), x, 1)) <= 57 Then                xNumb = xNumb & VBA.Mid(r.Item(i), x, 1)        End If    Next x    r.Item(i).Offset(0, 3).Value = xNumbNext iEnd Sub

如上代码有一行判断的条件语句:

If VBA.Asc(VBA.Mid(r.Item(i), x, 1)) >= 48 And VBA.Asc(VBA.Mid(r.Item(i), x, 1)) <= 57 Then  xNumb = xNumb & VBA.Mid(r.Item(i), x, 1End If

我们对每个字符进行ASC码判断,48代表0,57代表9,也就是数字0-9的ASC码。

本示例相对简单,并不能十分完善地达到提取要求,如要把每个数字进行一个分割处理。

有兴趣的朋友,可以利用本代码进行加工操作。

每天编一些代码,可以训练逻辑思维,如果不想让自己的脑袋生锈,这也是一件不错的工作。

欢迎关注、收藏

---END---

免责声明:本站部份内容由优秀作者和原创用户编辑投稿,本站仅提供存储服务,不拥有所有权,不承担法律责任。若涉嫌侵权/违法的,请反馈,一经查实立刻删除内容。本文内容由快快网络小梓创作整理编辑!