Excel VBA 字典的常用方式
运用字典的时候,对比数组。主要是运用字典的去重效果。
最常用的两种应用:
一:统计相同人名的销售额
二:统计系统人名出现的次数(唱票)
统计销售额的示例:
先看一下运行代码:

运行的结果与H、I列数据透视的结果一致。
具体的代码如下:

代码详解:
1.Dim 声明变量
2.set dic 声明字典
3.nRow 读取A列的最后一个非空单元格的行数
4.Range('a2:c' & nRow)传给数组 arr
5.读取数组,把人名作为字典的key,达到去重的目的,把销售额作为item进行累加,从而代码累计销售额的目的
For i = 1 To UBound(arr)
dic(arr(i, 1)) = dic(arr(i, 1)) + arr(i, 3)
Next i
'dic(arr(i, 1)) = dic(arr(i, 1)) + arr(i, 3)典型计数的用法
6.[E1] = [A1] [F1] = [C1]设置标题栏
7.把字典的keys与items写入对应的区域
统计票数的示例:
先看一下运行的代码:

具体的代码如下:

代码详解:
1.Dim 声明变量
2.set dic 声明字典
3.nRow 读取A列的最后一个非空单元格的行数
4.RangeRange('B2:D' & nRow)传给数组 arr
5.读取数组,把人名作为字典的key,达到去重的目的,用计数器统计出现的数量,把数据传给字典的item
For i = 1 To UBound(arr)
For j = 1 To UBound(arr, 2)
dic(arr(i, j)) = dic(arr(i, j)) + 1
Next j
Next i
'dic(arr(i, j)) = dic(arr(i, j)) + 1 3)典型计数的用法
7.把字典的keys与items写入对应的区域
注:两个代码,把字典的keys及items写入相应的表格时,用法有差异。一个是分别写入,一个是一次写入。