数组与字典解决方案第二十九讲 数组的创建方法小结及回填的注意事项

发布时间:2026/7/5 5:31:03

数组与字典解决方案第二十九讲  数组的创建方法小结及回填的注意事项 《VBA数组与字典方案》教程10144533是我推出的第三套教程目前已经是第二版修订了。这套教程定位于中级字典是VBA的精华我要求学员必学。7.1.3.9教程和手册掌握后可以解决大多数工作中遇到的实际问题。这套字典教程共两册一共八十四讲今后一段时间会给大家陆续推出修订后的教程内容。今日的内容是数组与字典解决方案第二十九讲 数组的创建方法小结及回填的注意事项【分享成果随喜正能量】心静者高高者俯瞰世界心和者仁仁者包容万物心慈者深深者淡对冷暖心慧者安安者笑对人生。第二十九讲 数组的创建方法小结及回填的注意事项大家好我们今日继续VBA数组与字典解决方案的讲解在最近的数组讲解中讲了很多基本的操作和概念那么VBA数组有哪些创建的方法呢数组和工作表又是如何对应呢1 使用Array函数创建数组这种方法很简单如arr Array(张一, 徐一, 陈一, 王一)2 使用Split函数创建数组Split的作用是把一个文本根据指定的分隔符建立一个数组。感觉就有点像EXCEL中的基础操作中的“分列”。不同的是“分列”操作是将一个单元格的文本按指定的分隔符分开存放在同行的多个单元格里而Split的作用是将一个文本也可以是存放在单元格里的按指定的分隔符分开存放在一个数组变量里。如arr Split(张一徐一陈一王一许一张二陈二张三徐二张四, )特别注意点用Split把文本转换成数组索引号总是从0开始。不管你是否使用了Option Base语句这点和Array不同。3 通过Range赋值创建数组如下面的代码创建了数组并赋值。Dim arr(1 To 29)For i 1 To 29arr(i) Cells(i, 1)Next4 直接等于某单元格区域这个很简单直接数组名等于单元格区域就可以了。比如想把A1:A100单元格的值给数组arr代码还可以简单写为arr [a1:a20] 。那么这里的arr是什么类型的数组呢大家要注意这个数组是二维数组。如下代码Sub MyNZsz_29() 第29讲 VBA数组的创建方法总结及数组回填到工作表的注意事项arr [a1:a20]Sheets(29).Selectr 2For t LBound(arr) To UBound(arr)Cells(r, 3) arr(t)r r 1NextEnd Sub代码截图在运行是会报错我们修正代码Sub MyNZsz_29() 第29讲 VBA数组的创建方法总结及数组回填到工作表的注意事项arr [a1:a20]Sheets(29).Selectr 2For t LBound(arr) To UBound(arr)Cells(r, 3) arr(t, 1)r r 1NextEnd Sub代码截图运行5 数组回填到工作表的特别注意点1 一维数组写入单元格区域时这个单元格必须是水平方向的也就是一个一行多列的单元格区域如果想写入垂直区域必须使用工作表的Transpose函数转换一下2 和工作表的多单元格数组公式一样数组写入单元格时单元格的区域必须和数组的大小一致。今日内容回向1 数组的常见创建方法有哪些2 如何理解工作赋值给数组是一个二维数组我多年的VBA实践经验全部浓缩在以下教程中

相关新闻