1、crr = Range("A1").CurrentRegion '以A1为起点的连续区域给数组
2、Range("K1").Resize(UBound(crr, 1), UBound(crr, 2)) = crr
'.resize(行数,列数),ubound(crr,1)为整个数组的行数,ubound(crr,2)为整个数组的列数,该语句相当于将整个数组复制到以K1为起点的区域
3、 Set outrange = Range("P1").Resize(UBound(crr, 1), 1)
outrange.Value = Application.Index(crr, 0, 3)
'先定义输出数组的行数和列数,该语句相当于定义了数组的行数,列数为一列
'然后用index将数组对应的值给输出数组,Application.Index(数组, 行数(如果为0为全部行), 数组第几列)
4、字典的定义
Dim dic As Object, key As String, dickeys, Item, dicItems
Set dic = CreateObject("scripting.dictionary")
5、字典的keys和items直接给数组
arr1 = dic.Keys '将关键字赋予arr1
arr2 = dic.Items '将条目赋予arr2
6、判断字典键(key)是否存在:
可以使用“Exists”方法判断一个键是否存在于字典中。例如:
If dict.Exists("apple") Then
MsgBox "存在"
Else
MsgBox "不存在"
End If
7、遍历字典:
可以使用“For Each”语句来遍历字典中的键值对。例如:
Dim key As Variant
For Each key In dict.Keys
MsgBox key & ": " & dict(key)
Next key
8、弹窗msgbox
MsgBox "关键字:及时雨" & vbcrlf & "条 目:" & .Item("及时雨"), vbOKOnly, ".Add ""及时雨"", ""宋江"""
标题为:.Add “及时雨”, “宋江”,vbOKOnly是添加弹窗标题的
内容为:关键字:及时雨" & vbcrlf & “条 目:” & .Item(“及时雨”)
9、'利用keys方法和Items方法输出所有关键字和所有条目
Sub Keys与Items方法输入数组()
With CreateObject("scripting.dictionary") '创建字典对象
.Add "及时雨", "宋江" '添加第一个条目对
.Add "黑旋风", "李逵" '添加第二个条目对
.Add "拼命三郞", "石秀" '添加第三个条目对
.Add "呼保义", "宋江" '添加第四个条目对
'将4个关键字导出到A1:A4区域中,必须选择区域
Range("A1:A4") = WorksheetFunction.Transpose(.Keys)
'将4个条目导出到B1:B4区域中
Range("B1:B4") = WorksheetFunction.Transpose(.Items)
End With
End Sub