在平时工作中,我们经常要建立两列相关数据一一对应的关系,或者统计某个字段元素出现测次数等基本信息,Excel中可以使用VBA中的字典(dictionary)来建立这种一一对应的关系。其中会用到字典的keys,items和EXCEL中的转置函数transpose
工具/原料
1
EXCEL
2
VBA
3
字典,dictionary
方法/步骤
1
在VB(ALT+F11)模式下,工具-引用
2
加载Microsoft Scripting Runtime,就可以引用字典功能了
3
举例,建立A列中班级和人数的一一对应关系,也就是说我们能够通过指定班级获得该班级所对应的人数
4
程序演示:其中dim dic as new dictionary ‘定义了一个新的字典,一定要使用newDic(range(“a”&i).value) = rnage(“b”&i).value ‘是一班级做为key,人数做为item;建立起一一对应的关系,其中1班出现了两次,字典赋值的时候会去最后一次的值,这里是人数12Range(“d”&1).resize(dic.count,1) = applicationtranspose(dic.keys) ‘最后将班级和人数重新打印到d列和e列,这里得到1班就只有一个值了
5
结果: