热点资讯
关于不用循环直接获取VBA数组某行或者某列的值
发布日期:2024-10-14 13:56 点击次数:94
在使用VBA的过程中,我们有时会需要用到取数组某行数据或者某列数据的情况,但是又不想用循环取一个个获取,有什么办法呢?今天给大家介绍一个函数,一个工作表中常用的函数Index,但是它的用法跟工作表中却有点不一样。下面我们来看看怎么用。
如图,我有一个这样的成绩表,然后分别获取第三行和第四列的值。
图片
代码展示:
图片
Sub test() Dim arr, rowarr, colarr arr = Range('A1').CurrentRegion.Value '将数据存入数组 rowarr = Application.WorksheetFunction.Index(arr, 3, 0) '获取第三行的值 Debug.Print Join(rowarr, ' ') colarr = Application.WorksheetFunction.Index(arr, 0, 4) '获取第四列的值 Debug.Print Join(Application.Transpose(colarr), ' ')End Sub 效果展示:图片
VBA中的Application.WorksheetFunction.Index是一个内置函数,用于从数组中返回指定行或列的数据。该函数的语法如下
Application.WorksheetFunction.Index(array, row_num, [column_num])参数说明:
array:必需,要返回数据的数组。
row_num:必需,要返回的行数,如果为0,则返回整个列的数据。
column_num:可选,要返回的列数,如果省略(为0),则返回整个行的数据。
注意当返回整列时,返回的是一个二维数组,返回某行时,返回的是一个一维数组
今天的教程就到这里啦,我们下期再见
本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报。