Split函数的基本讲解
2024-06-20 0
大家好,今天我们讲解《VBA信息获取与处理》教程《Split函数基础讲解》中第十四题《Split函数提取数据信息的深入讲解》第一节。这是一个非常实用的知识点,希望大家都能掌握并运用。
大家好,今天我们开始第十四个话题的讲解,这个话题是对Split函数的深入探索,深入分析这个函数在提取数据信息中的作用。在VBA版本6(Office2000)中,Microsoft引入了Split函数,该函数将文本字符串拆分为数组。了解了网页抓取之后,我想大家对这个特性有了非常深刻的认识。在本主题中,我们还将改进该功能的一些功能。
第一节Split函数的基本解释
在矩阵应用中,我们说过这个功能非常重要。返回下标从零开始的一维数组。在本节中,我们将首先回顾一下该功能的基本用法。
1什么是分割函数
Divide函数:返回包含指定数量的子字符串的一维从零开始的数组。
语法:Split(表达式,[分隔符,[限制,[比较]]])
各参数含义:
所需表达。包含子字符串和分隔符的字符串表达式。如果表达式是零长度字符串(''),则Split返回一个空数组,即不包含任何元素或数据的数组。
分隔符是可选的。用于标识子串边界的字符串字符。如果省略,则假定空格字符('')为分隔符。如果分隔符是零长度字符串,则返回包含整个表达式字符串的单元素数组。
该限制是可选的。返回子串的个数,-1表示返回所有子串。
比较是可选的。指示用于识别子字符串的比较方法的数值。它们的值如下:
vbUseCompareOption–1使用OptionCompare语句中定义的值执行比较。
vbBinaryCompare0执行二进制比较。
vbTextCompare1执行文本比较。
vbDatabaseCompare2仅适用于MicrosoftAccess。根据数据库中的信息进行比较。
2Split应用程序的基本代码
在我的第一套“VBA代码解决方案”教程中,我解释过这个函数是一个将文本转换为数组的函数。我们来看看这个函数的具体应用。
给我一个字符串:
strFull'VBA代码解决方案-VBA数据库解决方案-VBA数组和字典解决方案-VBA代码解决方案(视频)-'
“解释和应用VBA中的类-VBA信息的获取和处理”
在这个字符串中,我们看到每组教程中的名字前后都有空格,按照“-”和“-”提取时,返回的信息是不同的,比如下面的测试代码:
子目录()
工作表('SHEET1')选择
CellsClearContents
strFull'VBA代码解决方案-VBA数据库解决方案-VBA数组和字典解决方案-VBA代码解决方案(视频)-'
“解释和应用VBA中的类-VBA信息的获取和处理”
'arrA将是一个0-8数组
'分隔符不包含空格,因此strFull中的空格将包含在返回的数组值中。
arrASplit(strFull,'-')
sAarrA(3)'sA'VBA代码解决方案(视频)'。
MsgBox'arrA的第四个字符是'sA
'arrB将是一个0-8数组
'分隔符包含空格,不会包含在返回的数组值中。
arrBSplit(strFull,'-')
sBarrB(3)'sB'VBA代码解决方案(视频)'。
MsgBox'arrB的第四个字符是'sB
'以下代码将把数组放回到工作表中
ForiLBound(arrA,1)ToUBound(arrA,1)
单元格(i1,1)arrA(i)
下一个
ForiLBound(arrB;1)ToUBound(arrB;1)
细胞(i1,2)arrB(i)
下一个MsgBox'好的!'
结束子
代码截图:
代码解读:
1)strFull'VBA代码解决方案-VBA数据库解决方案-VBA数组和字典解决方案-VBA代码解决方案(视频)-'
“解释和应用VBA中的类-VBA信息的获取和处理”
上面的代码给一个字符串赋值。
2)arrASplit(strFull,'-')
上面的语句返回一个数组,该数组由'-'分隔strFull组成,这里要注意的是,由于测试字符串中有空格,因此返回的数组的每个元素都包含空格。
3)arrBSplit(strFull,'-')
上面的语句返回一个数组。该数组是通过用“-”分隔strFull来形成的。这里要注意的是,测试字符串中有空格,数组中不包含空格。
4)'以下代码将把数组放回到工作表中
ForiLBound(arrA,1)ToUBound(arrA,1)
单元格(i1,1)arrA(i)
下一个
ForiLBound(arrB;1)ToUBound(arrB;1)
细胞(i1,2)arrB(i)
下一个
在上面的代码中我们可以看到返回的数组元素。
3拆分申请返回结果分析
我们单击“运行”按钮,您可以在工作表中看到返回数组的每个元素:
在屏幕截图中我们可以看到A列中的数据包含空格。
本节知识点参考:
①Split函数的含义是什么?
②Split函数的分隔符不同,会导致返回值的差异。注意空间的影响。
该类的代码参考文件:014worksheetxlsm
积木式编程的思想和内涵:
在我的系列丛书中,我一直强调“搭积木”的编程思想。这也是学习使用VBA的主要方法,尤其是职场人士,更应该采用这种方案。其主要内涵:
1不要自己输入所有代码。你要做的就是将构建块放置在适当的位置,然后修改代码。
2创建您自己的“积木库”。在平时的学习过程中,我收集了自己认为有用的代码,在需要的时候积累起来,随时可以归还。您的构建块库中的信息越多,您的编程想法就越广泛。
VBA应用定义和学习教程:
VBA是利用Office进行小规模个人办公自动化的有效手段(工具)。这是我的VBA应用程序定义。在取代OFFICE的新办公软件到来之前,谁能在数据处理上做到最大,谁就是王者。其中,终极技能非VBA莫属!
记得20年前刚学VBA的时候,当时的资料很少,只能看源码自己摸索,非常困难。二十年过去了,为了防止正在学习VBA的朋友重蹈我以前的经历,我根据自己多年使用VBA的实践经验,推出了六本专门的VBA教程:
第一套:VBA代码解答,是对VBA中各个知识点的讲解。教程共147篇,涵盖大部分VBA知识点;本套教程当前版本为第二修订版,程序文件已经在32位和64位OFFICE系统上进行了测试。
第二套:VBA数据库解决方案数据库是数据处理的专业工具本教程详细介绍了ADO使用实例方法以及连接ACCDB和EXCEL的操作,适合中级人员学习。本套教程目前提供了教程的第一修订版,程序文件已经在32位和64位OFFICE系统上进行了测试。
第三套:VBA数组和字典解决方案数组和字典是VBA的精髓。字典是提高VBA代码水平的有效手段。本套教程当前版本为第一修订版,程序文件已经在32位和64位OFFICE系统上进行了测试。
第四套:VBA代码解答视频是专门针对初学者的视频讲解,可以帮助你快速上手,更快掌握这项技能。本套教程是第一套教程(修订版)的视频讲解,听元音时更容易接受。这套教程还将提供已经在32位和64位OFFICE系统上测试过的附加程序文件。
第5组:在VBA中解释和使用类这是一个高级教程,解释了类的虚无和物理程度。虽然类的使用较少,但是认真学习可以促进自己VBA理论的提高。这套教程的理解主要是让读者了解和理解一种佛教哲学。第六套教程:《VBA信息获取与处理》,是一套范围更大、实用性更强、针对中高级人员的高级教程。本教程共涵盖二十个主题,包括:应用程序之间获取信息、使用随机信息、发送电子邮件、VBAInternet数据捕获、VBA延迟操作、剪贴板应用、拆分功能扩展、工作表中的信息等。应用程序交互,使用FSO对象,获取工作表和文件夹信息,获取图形信息,自定义工作表信息功能等。
前面教程的学习顺序是:1→3→2→6→5或4→3→2→6→5。提供的程序文件是一个庞大的代码库,供读者使用微信:NZ9668
学习VBA是一个过程,也需要体会一下枯燥的感觉
“百鸟齐飞,孤云孤单,百看不厌,唯有敬亭山”。学习的过程也是修心的过程,修心静气。在代码的世界里,你的心会安心,你的心情会更好,你的身体自然也会感觉更好。平静的心才是公平的心。心中没有那么多的邪知邪见,也没有那么多的妄想。利益别人就是利益自己。我的教程是为有困难的朋友准备的。
“水善万物而不与之争,小则寂静,大则汹涌”。学习也是如此,知道自己需要什么,不要蜷缩在一小片自以为天堂的世界里,等到老了才自欺欺人。我们必须努力提高自己,以充满活力的灵魂把握现在,这就是进步。越重要的事情,就越困难。意志决定成败,智慧决定成败。无论你发现什么,永远都是风景。少看争执,低估胜负。学之时,微妙而无声;用之时,则浩大而汹涌。“路漫漫其修远兮,吾将上下而求索”。
每一次的收获,都是一次成长的记录。最后献上一段话送给致力于学习VBA的朋友,让大家感受一下枯燥而执着的学习过程:
浮云过,密语无声,
唯有微风惊梦中黄莺。
看看星星,转身离开北斗七星,
让我们像大雁一样把过去抱在一起。
陌生的人,昏暗的灯光,
不忍看长汀。
有多少VBA人,
漆黑的夜里,我静静地寻找梦想,却等待着黎明。
不努力怎么办!
很想把自己多年实际工作经验的成果分享给真正需要使用VBA的旅友们,分享这些有用的东西。回顾过去学习和使用VBA的经历,我深受感动,谨用这句话来纪念。
分享成果,享受正能量
本站文章均由用户上传或转载而来,该文章内容本站无法检测是否存在侵权,如果本文存在侵权,请联系邮箱:2287318951@qq.com告知,本站在7天内对其进行处理。