-
dataframe转化为array_VBA代码解决方案的第60讲内容:文本转换为数组及Split函数
2020-11-25 10:08:48大家好,我们今日继续讲解VBA代码解决方案的第60讲内容:如何将文本内容转化为数组。这个问题的提出是因为我们在处理一些文字时往往在WORD中,要拷贝到EXCEL中来填充一些资料,多是人名,设备名等,这些往往要求以...大家好,我们今日继续讲解VBA代码解决方案的第60讲内容:如何将文本内容转化为数组。这个问题的提出是因为我们在处理一些文字时往往在WORD中,要拷贝到EXCEL中来填充一些资料,多是人名,设备名等,这些往往要求以独占一个 单元格的信息,这时该如何把这些人名,设备名放到EXCEL中呢?这就是讲文本转化为数组再填充的问题。
一:在处理字符串时可以使用Split 函数将字符串按指定的分隔符分开并以数组返回,
Split 函数返回一个下标从零开始的一维数组,包含指定数目的子字符串,语法如下:
Split(expression[, delimiter[, limit[, compare]]])
参数expression是必需的,包含子字符串和分隔符的字符串表达式。
参数delimiter是必需的,用来标识子字符串边界的字符串字符。如果忽略,则使用空格字符(" ")作为分隔符。
二:我们在完成数组的转换之后,往往要求横向或者纵向的填充,这时工作表Transpose函数返回转置单元格区域,即将一行单元格区域转置成一列单元格区域,反之亦然,语法如下:
TRANSPOSE(array)
参数array为需要进行转置的数组或工作表中的单元格区域。
有了上面两个知识点我们看我们今日的学习内容,我们有一个单元格的文本内容,要把这些内容首先转化为数组,然后再填充到纵向的单元格中。
代码如下:
Sub MySplitarr()
Dim Arr As Variant
Arr = Split(Sheets("kk").Cells(1, 1), " ")
Sheets("kk").Cells(3, 1).Resize(UBound(Arr) + 1, 1) = Application.Transpose(Arr)
End Sub
代码解析:
MySplitarr过程使用Split 函数将工作表Sheets("kk")中A1单元格的姓名分别写入到工作表Sheets("kk")中的A列单元格。
第4行代码,首先使用UBound函数取得返回数组的最大下标后调整单元格区域,因为数组下标的缺省下界默认为0,所以在使用Resize属性调整单元格区域时参数RowSize需要在返回数组的最大下标上加一。
然后使用工作表Transpose函数将返回数组转置后写入到工作表调整后的单元格区域中。
代码截图:
运行前的窗口:在A1单元格有一组文本:
运行后:
运行后在A3单元格向下处理了上述的文本。
今日内容回向:
1 Split 函数的作用是什么?他是VBA函数吗?
2TRANSPOSE(array) 函数的作用是什么?
欢迎大家到我的自媒体平台沟通交流:个人微信号“NZ9668”、头条号“VBA专家”、百家号“VBA与GO语言”、微信公众号“NZ_9668”、社群“VBA学习交流群”。
这一系列文章是根据我多年的工作经验编写的,也是一直在利用的工具,非常方便好用。现在分享出来,希望能对同样在职场打拼的朋友有些许的帮助,使你的工作更加高效、流畅。朋友们有问题请随时提出来,我们一起探讨学习。对数据分析有需要的公司、组织或个人可以直接联系我,及时为你提供专业的定制技术支持。
工作不是一切。工作是每个人安身立命、成长发展的基础。但你要知道工作是永远也做不完的,时间会抹去很多问题。多关注自己、家人和朋友,这些才是我们生活中更为重要的东西。
-
vba replace函数_126个vba函数原型示例
2020-12-14 16:45:14分享一个VBA常用函数示例。目 录:函数 (Visual Basic for Applications)1. Abs 函数(绝对值函数)2. Array 数组函数3. Asc 字符码函数4. Atn 余切函数5. CallByName 函数(执行对象的方法,或者设置或返回对象的...分享一个VBA常用函数示例。
目 录:
函数 (Visual Basic for Applications)
1. Abs 函数(绝对值函数)
2. Array 数组函数
3. Asc 字符码函数
4. Atn 余切函数
5. CallByName 函数(执行对象的方法,或者设置或返回对象的属性
6. Choose选择函数
7. Chr 函数
8. 命令函数
9. 数据类型转换函数
10. Cos 函数
11. CreateObject 函数
12. CurDir 函数
13. CVErr 函数
14. Date 函数
15. DateAdd 函数
16. DateDiff 函数
17. DatePart 函数
18. DateSerial 函数
19. DateValue 函数
20. Day 函数
21. DDB 函数 双倍余额递减法折旧函数
22. 派生三角算术函数
23. Dir 函数
24. DoEvents 函数
25. Environ 函数
26. EOF 函数
27. Error错误函数
28. Exp 自然对数幂函数
29. FileAttr 函数
30. FileDateTime 函数
31. FileLen 函数 文件字节大小
32. Filter数组筛选器函数
33. Format 格式函数
34. FormatCurrency 函数
35. FormatDateTime 函数
36. FormatNumber 函数
37. FormatPercent 函数
38. FreeFile 函数
39. FV 函数 年金终值函数
40. GetAllSettings 注册表属性函数
41. GetAttr 函数 返回文件属性
42. GetObject 函数
43. GetSetting 函数 注册表函数
44. Hex 函数 10进制转16进制
45. Hour 函数
46. IIf 函数
47. IMEStatus 函数 输入法函数
48. 输入函数
49. InputBox 函数
50. InStr 函数 左边开始查找
51. InStrRev 函数 尾部开始查找
52. INT FIX输入、修复函数
53. IPmt 财务函数
54. IRR 函数 内涵报酬率函数
55. IsArray 函数
56. IsDate 函数
57. IsEmpty 函数
58. IsError 函数
59. IsMissing 函数
60. IsNull 函数
61. IsNumeric 函数
62. IsObject 函数
63. Join连接函数
64. LBound 函数
65. LCase 函数
66. Left函数
67. Len 函数
68. Loc 函数
69. LOF 函数 打开文件的字节大小
70. Log对数函数
71. LTrim、RTrim 和 Trim 函数
72. MacID 函数
73. MacScript 函数
74. 算术函数
75. Mid函数
76. Minute函数
77. MIRR 函数 财务函数
78. Month 函数
79. MonthName 函数
80. MsgBox 函数
81. Now 函数
82. NPer 财务函数
83. NPV 财务函数
84. Oct 函数 10进制转8进制
85. 分区函数
86. Pmt 财务函数
87. PPmt 函数
88. PV 财务函数
89. QBColor 颜色值函数
90. Rate 财务函数
91. Replace 函数
92. RGB 函数
93. Rigjt函数
94. Rnd 函数
95. Round 函数
96. Second函数
97. Seek 函数
98. Sgn 函数
99. Shell 函数
100. Sin 函数
101. SLN 直线折旧法函数
102. Space函数
103. Spc 函数
104. Split函数
105. Sqr 函数
106. Str 函数数值转字符串
107. StrComp 字符串比较函数
108. StrConv 大小写转换函数
109. String函数
110. StrReverse 函数
111. 切换函数
112. SYD 年数总和法折旧函数
113. 选项卡函数
114. Tan 函数
115. Timer 函数
116. TimeSerial 函数
117. TimeValue 函数
118. 类型转换函数
119. TypeName 函数
120. UBound 函数
121. UCase 函数
122. Val 函数
123. VarType 函数
124. Weekday日函数
125. WeekdayName 函数
126. Year 函数
示例下载:
在“了解更多”里下载。
-
VBA JOIN函数详解
2019-02-03 05:52:17VBA SPLIT函数详解 SPLIT函数实现了字符串拆分,相应的逆运算可以使用JOIN函数,其语法格式如下。 Join(sourcearray[, delimiter]) 参数 含义 sourcearray 必选参数,包含被连接子字符串的一维数组 ...上一篇博客讲解了
SPLIT函数
的用法,大家可以移步这里。SPLIT函数
实现了字符串拆分,相应的逆运算可以使用JOIN函数
,其语法格式如下。Join(sourcearray[, delimiter])
参数 含义 sourcearray 必选参数,包含被连接子字符串的一维数组 delimiter 可选参数,在返回字符串中用于分隔子字符串的字符 参数delimiter
与SPLIT函数
中该参数的用法相同,省略时使用空格做为分隔符。如下的示例代码实现了将字符串数组
arrString
组合为一个字符串。Sub JoinDemo1() Dim arrString Dim strString As String arrString = Array("Good", "good", "study,", "day", "day", "up") strString = VBA.Join(arrString) Debug.Print strString End Sub
输出结果如下。
Good good study, day day up
有时需要在字符串的两端都使用分隔符,即
|Good|good|study|day|day|up|
示例代码如下:
Sub JoinDemo3() Dim arrString Dim strString As String arrString = Array("Good", "good", "study,", "day", "day", "up") strString = "|" & VBA.Join(arrString, "|") & "|" Debug.Print strString End Sub
其实代码可以进行简化,
JoinDemo3
过程中第5行代码不需要那么复杂。代码可以简化如下。Sub JoinDemo4() Dim arrString Dim strString As String arrString = Array("", "Good", "good", "study,", "day", "day", "up", "") strString = VBA.Join(arrString, "|") Debug.Print strString End Sub
其中的技巧在于,第4行代码中,在数组中第一个和最后一个元素增加了空字符,第5行代码组合字符串时,就可以实现字符串两段添加分隔符的效果。
-
的函数原型_126个vba函数原型示例
2021-01-12 18:45:49Access专家课堂两周年庆...目 录:函数 (Visual Basic for Applications)1.Abs 函数(绝对值函数)2.Array 数组函数3.Asc 字符码函数4.Atn 余切函数5.CallByName 函数(执行对象的方法,或者设置或返回对象的属性6.Choo...Access专家课堂两周年庆,视频课程、培训班、企业版等5~8折优惠,->点此了解详情
分享一个VBA常用函数示例。目 录:
函数 (Visual Basic for Applications)
示例下载:
1. Abs 函数(绝对值函数)
2. Array 数组函数
3. Asc 字符码函数
4. Atn 余切函数
5. CallByName 函数(执行对象的方法,或者设置或返回对象的属性
6. Choose选择函数
7. Chr 函数
8. 命令函数
9. 数据类型转换函数
10. Cos 函数
11. CreateObject 函数
12. CurDir 函数
13. CVErr 函数
14. Date 函数
15. DateAdd 函数
16. DateDiff 函数
17. DatePart 函数
18. DateSerial 函数
19. DateValue 函数
20. Day 函数
21. DDB 函数 双倍余额递减法折旧函数
22. 派生三角算术函数
23. Dir 函数
24. DoEvents 函数
25. Environ 函数
26. EOF 函数
27. Error错误函数
28. Exp 自然对数幂函数
29. FileAttr 函数
30. FileDateTime 函数
31. FileLen 函数 文件字节大小
32. Filter数组筛选器函数
33. Format 格式函数
34. FormatCurrency 函数
35. FormatDateTime 函数
36. FormatNumber 函数
37. FormatPercent 函数
38. FreeFile 函数
39. FV 函数 年金终值函数
40. GetAllSettings 注册表属性函数
41. GetAttr 函数 返回文件属性
42. GetObject 函数
43. GetSetting 函数 注册表函数
44. Hex 函数 10进制转16进制
45. Hour 函数
46. IIf 函数
47. IMEStatus 函数 输入法函数
48. 输入函数
49. InputBox 函数
50. InStr 函数 左边开始查找
51. InStrRev 函数 尾部开始查找
52. INT FIX输入、修复函数
53. IPmt 财务函数
54. IRR 函数 内涵报酬率函数
55. IsArray 函数
56. IsDate 函数
57. IsEmpty 函数
58. IsError 函数
59. IsMissing 函数
60. IsNull 函数
61. IsNumeric 函数
62. IsObject 函数
63. Join连接函数
64. LBound 函数
65. LCase 函数
66. Left函数
67. Len 函数
68. Loc 函数
69. LOF 函数 打开文件的字节大小
70. Log对数函数
71. LTrim、RTrim 和 Trim 函数
72. MacID 函数
73. MacScript 函数
74. 算术函数
75. Mid函数
76. Minute函数
77. MIRR 函数 财务函数
78. Month 函数
79. MonthName 函数
80. MsgBox 函数
81. Now 函数
82. NPer 财务函数
83. NPV 财务函数
84. Oct 函数 10进制转8进制
85. 分区函数
86. Pmt 财务函数
87. PPmt 函数
88. PV 财务函数
89. QBColor 颜色值函数
90. Rate 财务函数
91. Replace 函数
92. RGB 函数
93. Rigjt函数
94. Rnd 函数
95. Round 函数
96. Second函数
97. Seek 函数
98. Sgn 函数
99. Shell 函数
100. Sin 函数
101. SLN 直线折旧法函数
102. Space函数
103. Spc 函数
104. Split函数
105. Sqr 函数
106. Str 函数数值转字符串
107. StrComp 字符串比较函数
108. StrConv 大小写转换函数
109. String函数
110. StrReverse 函数
111. 切换函数
112. SYD 年数总和法折旧函数
113. 选项卡函数
114. Tan 函数
115. Timer 函数
116. TimeSerial 函数
117. TimeValue 函数
118. 类型转换函数
119. TypeName 函数
120. UBound 函数
121. UCase 函数
122. Val 函数
123. VarType 函数
124. Weekday日函数
125. WeekdayName 函数
126. Year 函数在屏幕左下角的
End推荐阅读Access训练营 从0基础开始,循序渐进,系统化的训练营课程,整合作业、课表、社群,为学员提供答疑,获得更佳的学习效果。【详情>>】
Access专家课堂 是Access数据库爱好者提升技能的专业课堂,由微软最有价值专家张志创办,课堂有众多Access课程,可通过电脑或微信学习。【详情>>】
Access软件作品 十二位Access学员对自已开发的软件进行了介绍并分享开发心得,一起来了解Access开发的软件。【详情>>】
从Excel到Access数据库 为广大Excel用户了解、学习Access数据库开设的一个实用课程,侧重于数据统计分析。【详情>>】
Access每天3分钟 视频课程共50集,Access的基础知识并结合示例详细讲解,每集视频只有短短几分钟,学员可以利用碎片化的时间,每天进步一点点【详情>>】
张志,Access数据库培训讲师,『Access软件网』创始人,服务过的知名企业有北京奔驰、立达(中国)纺织仪器、宜家(中国)投资等。 2003~2013年连续10年获微软最有价值专家。【详情>>】
-
access vba函数
2006-09-25 11:09:00access vba函数Abs 函数 返回参数的绝对值,其类型和参数相同。 语法Abs(number) 必要的 number 参数是任何有效的数值表达式,如果 number 包含 Null,则返回 Null,如果 number 是未初始化的变量,则返回 0。说明一... -
Excel函数及VBA问题汇总
2013-03-28 17:00:001. Vlookup采用模糊匹配,仍然出现N/A错误 通常大家认为只有精确匹配,才会出现N/A错误,也就是查找不到结果;...哈哈,有时候函数帮助里的细节能解决关键问题。 2. 将单元格区域Range对象直接赋值给数组Array,... -
VBA Excel 常用 自定义函数
2014-06-21 15:40:001.将 互换 Excel 列号(数字/字母) ...Public Function excelColumn_numLetter_interchange(numOrLetter) As String Dim i, j, idx As Integer Dim letterArray letterArray = Array("A", "B", "C", "D", "E... -
【原创】VBA学习笔记(12)VBA的数组 array---基础知识(1)
2019-04-02 07:40:24一 数组 array 1.1 什么是数组? 抽象定义: 什么是数组:数组就是多个单位(element)有序的,连续存储在一起作为一个整体,统一叫1个名字(数组名) 如果已经是数组,那么... 数组函数定义的内容,arr1=array(1... -
vba中部分函数用法
2010-10-18 10:07:00MATCH函数说明:MATCH(lookup_value,lookup_array,match_type)Lookup_value 为需要在数据表中查找的数值。Lookup_value 为需要在 Look_array 中查找的数值。例如,如果要在电话簿中查找某人的电话号码,则应该将姓名... -
面向VBA一维数组的实用自定义函数
2019-10-03 16:23:08UDF.dll包含了一组实用的用户自定义函数,提供了数组处理的快速方法,可以在VB6、VBS、32位VBA中调用。 看完如下的实例代码,就明白它的用处了。 Private MyUDF As New UDF.ArrayConversion Sub 是否包含某元素... -
C# 汉字中文大写货币转换函数类(根据其他人的VBA函数改编)
2014-09-10 02:28:24/// ///汉字中文大写货币转换函数类 /// public static string HZHB(decimal mymoney ) { string hzhbmoney = "", intString, decString = ""; Array tmpString, cn -
自用Excel VBA函数整理 part2
2009-12-12 15:12:00执行ADO SQL(参数可为1维Array或Range): Public Function ExecuteSQLCmd(conn As ADODB.Connection, cmd As ADODB.Command, ByRef rowsAffected, Optional paramArrayOrRng) As ADODB.Recordset If cmd.... -
【原创】VBA学习笔记(310)VBA的一维数组相关的 工作表函数,方法等等
2019-12-24 20:33:021 数组相关的工作表函数,方法 工作表函数(都是只对一维数组生效) application.max() application.min() application.large() application.small() application.count() ...arr1 = Array(1, 2, 3,... -
excel VBA 关于动态数组模仿list容器的相关操作函数
2019-03-26 15:04:36声明一个动态数组 Dim arrays() As String 'z字符串型数组...Function display_array(arrays) Dim result As String result = "" Dim array_len As Integer array_len = UBound(arrays) + 1 For i = 0 To array_len ... -
access vba 常量数组赋值_Excel VBA解读(136): 在用户定义函数中的变体、引用、数组、计算表达式、标量....
2020-11-25 10:07:58学习Excel技术,关注微信公众号:excelperfect在前面的几篇文章中,我们自定义的函数使用定义为Range的参数来从Excel工作表中获取数据,例如:Function VINTERPOLATEB(Lookup_Value As Variant, _Table_Array As ... -
VBA 不能给数组赋值--array() 或[{}] 都不可以对静态数组赋值
2019-12-23 18:15:31'array()函数返回的必须是变量,或变量对等的动态数组,不能赋值给静态数组 'arr2 = [{3, 4, 5, "6", 7, 0, 1, 2, 8, 9}] 也不行 'arr2() = Array(3, 4, 5, "6", 7, 0, 1, 2, 8, 9) arr2(3) = 1 arr... -
VBA 如何将array数组逆序排列呢?---包含1维数组,2维数组举例
2019-12-20 13:20:19好像没有数组直接反转的 函数 我尝试利用strreverse转一下看看 这个字符串取反strreverse,连10都变01,不可行,不是按单个元素取反序的。 局限性较大 少数情况,每个element 都是但字符的 但数字字母的也许可用... -
vba遍历数组_VBA代码解决方案的第59讲内容:如何在代码运行时创建数组
2021-01-09 02:54:29在之前我讲过很多了,估计详细阐述数组的只有我这个平台可以找到了,今日讲的是在VBA中代码运行的时候如何创建数组,为了实现这个目的,我们需要梳理一下下面的几个知识点:1创建数组函数:Array函数。这个函数返回... -
【VBA研究】 另存为自动命名
2021-03-12 09:40:57在代码中用format函数取现在的时间,VBA 的 Format 函数与工作表函数 TEXT 用法基本相同,但功能更加强大,许多格式只能用于VBA 的 Format 函数,而不能用于工作表函数 TEXT 。 Format(Now, "yyyymmddhhmm") 把... -
vba 执行网页javascript_在VBA中使用JAVASCRIPT和VBSCRIPT
2020-12-24 10:19:17在VBA中使用JAVASCRIPT和VBSCRIPT(1)javascript有许多函数和功能可以弥补VBA不足,如正则,数组,类,等等1)以数组为例,用JAVASCRIPT排序Subfig8()Setx=CreateObject("msscriptcontrol.scriptcontrol")x.Language=... -
ExcelVBA 之列表
2020-06-07 01:41:36Array函数将列标输入到工作表里: Sub ColumnHeads() Dim heading As Variant Dim cell As Range Dim i As Integer i = 0 heading = Array("First Name", "Last Name", "Position", _ "Salary") Workbooks.Add For ... -
Excel_VBA教程
2014-09-22 11:36:349.ARRAY函数 139 10.ISARRAY函数 140 11.ERASE函数 140 12.LBOUND函数和UBOUND函数 141 13.数组中的错误 141 14.数组作为参数 143 15.接下来… 143 第八章 利用VBA操纵文件和文件夹 144 1.获取当前文件夹的名称... -
必须声明标量变量_Excel VBA解读(136): 在用户定义函数中的变体、引用、数组、计算表达式、标量...
2021-01-27 03:22:25学习Excel技术,关注微信公众号:excelperfect在前面的几篇文章中,我们自定义的函数使用定义为Range的参数来从Excel工作表中获取数据,例如:Function VINTERPOLATEB(Lookup_Value As Variant, _Table_Array As ... -
vba判断mysql表是否存在_使用VBA代码完成判断工作簿是否存在及用数组来保存数据的方法...
2021-01-30 12:33:40分享成果,随喜真能量。大家好,今日内容仍是和大家分享VBA编程中常用的简单“积木”过程代码,这些... 177:使用Array函数创建一个数组用来保存数据并将其写入到工作表的单元格区域VBA过程代码176:使用自定义MyExi... -
vba 判断数组是否为空_使用VBA代码完成判断工作簿是否存在及用数组来保存数据的方法...
2020-12-11 13:19:07分享成果,随喜真能量。大家好,今日内容仍是和大家分享VBA编程中常用的简单“积木”过程代码,这些... 177:使用Array函数创建一个数组用来保存数据并将其写入到工作表的单元格区域VBA过程代码176:使用自定义MyExi... -
vba判断mysql表是否存在_VBA代码判断工作簿中是否存在指定工作表及用数组保存数据的方法...
2021-01-30 12:33:17分享成果,随喜真能量。大家好,今日内容仍是和大家分享VBA编程中常用的简单“积木”过程代码,这些... 177:使用Array函数创建一个数组用来保存数据并将其写入到工作表的单元格区域VBA过程代码176:使用自定义MyExi... -
ExcelVBA程序设计.doc
2011-04-05 21:32:519.ARRAY函数 139 10.ISARRAY函数 140 11.ERASE函数 140 12.LBOUND函数和UBOUND函数 141 13.数组中的错误 141 14.数组作为参数 143 15.接下来… 143 第八章 利用VBA操纵文件和文件夹 144 1.获取当前文件夹的名称... -
VBA自动化办公
2019-10-19 11:05:25Dim TestData(1 To 20) As String 'Create a array of length is 20 Dim CurPath As String 'Create a string '自定义的一个获取数据函数 Sub GetData() Dim w1 As Worksheet Dim wb As Work... -
Excel VBA 基础教程
2019-01-01 18:51:06目 录 一、VBA语言基础...................................................................................................................1 第一节 标识符....................................................