下面的文章中将和大家简单分享一下数组的应用。
1. 在如图所示的一张成绩表中,根据学生的姓名查找出其对应的各个科目的成绩。
2. 点击“开发工具”,打开Visual Basic,添加模块和过程,称之为“查询数据”。
3. 在过程中定义一个整数变量i,添加一个for循环。
4. 在for循环中通过工作表函数VLOOKUP来查询各科目的成绩数据。
1) Range("I2").Offset(0, i-1)是分别定位I2单元格(“英语”),及向右移动后的J2(“数学”)和K2(“语文”)。
2) VLookup(Range("H2"),Range("C:F"),i+1,False)是通过H2单元格(“姓名”)来查找其对应的源数据区域中的第2到4列的各个科目成绩。
5. 在查询条件输入一个姓名,执行以上代码后,可以返回对应的结果。
6. 在VLOOKUP函数中Range("C:F")的数据范围可以通过定义一个数组来实现。
Sub查询数据()
Dim i As Integer
Dim arr()
arr = Range("C:F")
For i = 1 To 3
Range("I2").Offset(0, i - 1) = Application.WorksheetFunction.VLookup(Range("H2"), arr, i + 1, False)
Next
EndSub
通过将数据源区域定义为数组,可以在过程的其他代码中重复多次使用,更多应用请关注后续分享。