第058篇:VBA之向数组中写数据和从数组中取数据

您所在的位置:网站首页 怎样将数组中的数抽取出来 第058篇:VBA之向数组中写数据和从数组中取数据

第058篇:VBA之向数组中写数据和从数组中取数据

2024-07-10 18:24| 来源: 网络整理| 查看: 265

早上起来,一边换衣服一边想,今天天气这么好,应该去哪吸吸氧、散散心,一度肥肠激动

再一想,我好像好像好像……还有一个报告需要写……可我真的想出去玩

哎呀我裂开了呀……

另一方面,2020年的运势不算太好,虽然四平八稳,但一直没有让自己满意,于是查看了一下2021年的运势,尚可尚可!

以上内容,纯属迷信,瞎玩瞎看

不过这让我想起来周恩来总理给妻子邓颖超写的信:

                                我这一生都是坚定不移的唯物主义者,唯有你,我希望有来生。——周恩来

我亦是坚定不移的唯物主义者,却偏偏遇到不知该用什么理论来解释的事。

************************** 学VBA专用分隔符 **************************

一、向数组中写数据

Sub 向数组中指定的位置写入数据()

Dim arr(1 To 9)         '定义arr为有9个位置的数组

arr(3) = "刘"              '给第3个位置赋值“刘”

arr(5) = "美"              '给第5个位置赋值“美”

arr(7) = "丽"              '给第7个位置赋值“丽”

End Sub

Sub 循环向数组中写入数据()

Dim arr(1 To 4)

For Each Rng In [a1:a4]       '将a1到a4单元格位置赋给Rng

       n = n + 1

       arr(n) = Rng                   '再将Rng位置里的值赋给每个数组变量

Next

End Sub

Sub 常量数组数据写入一般数组()

Dim arr()                                     '相当于arr是个没有固定位置数的动态数组

arr = Array("V", "B", "A", 9)         ‘将数组函数Array里的值写入数组arr

End Sub

Sub 单元格区域数据批量写入数组()

arr1 = [a1:a4]           '注意:当向数组中批量写入多行,结果就是2维数组,如果要转换就用转换函数Application.transpose

arr2 = Application.Transpose([a1:a4])

arr3 = [a1:d1]           '一列数据转为1维数组只需要用1次转换函数,但如果是一行数据转为1维数组就需要用2次转换函数

arr4 =Application.Transpose(Application.Transpose([a1:d1]))

End Sub

二、从数组中取数据

Sub 取数组中指定位置的元素()

arr = [a2:a5]

MsgBox arr(2, 1)        ’取2行1列

MsgBox arr(4, 1)        '取4行1列

End Sub

Sub 循环取数()

arr = [a2:a9]                           '将单元格区域[a2:a9]的值赋给数组arr

For i = 1 To 3

      Cells(i, 3) = arr(i, 1)          '将数组arr的值赋给第3列单元格

Next

End Sub

***********************************

Sub 一次性取数()

arr = [a2:a5]                          '将单元格区域[a2:a5]的值赋给数组arr

Range("d1:d"&4) = arr          '将数组arr的值赋给[d1:d4]区域

End Sub

Sub 用转置函数()

arr = [a2:a5]                                       '将单元格区域[a2:a5]的值赋给数组arr

arr1 = Application.Transpose(arr)      '将单列2维数组arr转置为1维数组

[a7:d7] = arr1                                     '按行的方向给单元格赋数组里的值

[a8:d8] = arr1

[a9:d9] = arr1

End Sub



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3