摘要:《VBA经典应用69例》(版权10178981),是我推出的第九套教程,教程是专门针对初级、中级学员在学习VBA过程中可能遇到的案例展开,这套教程案例众多,紧贴“实战”,并做“战术总结”,以便大家能很好的应用。教程的目的是要求大家在实际工作中要利用好VBA。本
《VBA经典应用69例》(版权10178981),是我推出的第九套教程,教程是专门针对初级、中级学员在学习VBA过程中可能遇到的案例展开,这套教程案例众多,紧贴“实战”,并做“战术总结”,以便大家能很好的应用。教程的目的是要求大家在实际工作中要利用好VBA。本套教程共三册六十九个专题,今日内容:VBA经典应用69例应用7:根据指定的固定字符进行删除操作
【分享成果,随喜正能量】人生最大的本钱是尊严,人生最大的欢喜是法乐,人生最大的希望是平安,人生最大的发心是利众。。
我们这个专题的内容是字符串String的处理,在我的各套教程中一直把字符串处理作为一项非常重要的知识点来讲解。对于VBA语言而言,字符串操作是编程中的关键技能。VBA 开发人员的技能水平通常取决于他操纵字符串的程度。Excel 在数学操作方面非常强大,但文本操作却需要我们具有一定的创造力和经验。
在本专题中,我将向展示如何从字符串中删除字符,学习如何通过替换、左、右、修剪和 Instr函数功能来处理它们。
4 根据指定的固定字符进行删除操作我们继续讲解字符串的操作,这部分我们讲解如何根据指定的固定字符进行字符串的删除操作。我们看这样的一个操作:对于一个电子邮件,如nesang@189.cn,我们需要删除邮件中的189.cn这个域名,该如何进行字符串的操作呢?
这种情况下,我们可以通过VBA中的Instr函数首先找出"@"的位置,要删除域名,我们必须提取"@"的前的所有字符。
实例五:根据指定的固定字符进行删除操作
下面我们以批量操作来讲解,如下面的截图:
下面看我给出的代码:
Sub mynzE
Dim myCell As Range
Dim MyRange As Range
Dim tmp As String
'指定数据区域
Set MyRange = Range("A12:A15")
'遍历循环提取字符串
For Each myCell In MyRange.Cells
tmp = myCell.Value
'提取"@"左侧 字符
myCell.Offset(0, 1).Value = ""
myCell.Offset(0, 1).Value = "'" & Left(tmp, InStr(tmp, "@") - 1)
Next
End Sub
代码截图:
代码的解读:
① Left(tmp, InStr(tmp, "@") - 1)是提取"@"左侧 字符。
② InStr(tmp, "@")是获取"@"在字符串中位置。
最后我们看代码的运行结果:
待续
本讲内容参考程序文件:应用007.xlsm
我20多年的VBA实践经验,全部浓缩在下面的各个教程中:
来源:VBA语言专业教育