济南专业的设计网站,济南网站制作开通,python做后台开发移动网站,企业网站的购买方式大家好#xff0c;我们今日继续讲解VBA数组与字典解决方案第37讲内容#xff1a;在VBA中字典的应用。对于字典,也许许多的朋友对此比较陌生#xff0c;在有的语言里字典也称之为MAP,应用也是比较广泛的。字典#xff0c;其实就是一些“键#xff0d;值”对。使用起来非常方…大家好我们今日继续讲解VBA数组与字典解决方案第37讲内容在VBA中字典的应用。对于字典,也许许多的朋友对此比较陌生在有的语言里字典也称之为MAP,应用也是比较广泛的。字典其实就是一些“键值”对。使用起来非常方便有类似于微型数据库的作用可用于临时保存一些数据信息。一VBA中创建字典用的是WSH引用。Dim myd As ObjectSet myd CreateObject(Scripting.Dictionary)二字典的方法有Add、Exists、Keys、Items、Remove、RemoveAll六个方法。①Add 用于添加内容到字典中。如myd.Add key, item 第一个参数为键第二个参数为键对应的值②Exists用于判断指定的关键词是否存在于字典的键中。如myd.Exists(key)。如果存在返回True否则返回False。通常会在向字典中添加条目的时候使用即先判断字典中是否已存在这个记录如果不存在则新增否则进行其它的操作。③Keys获取字典所有的键返回类型是数组。如myd.Keys()④Items获取字典所有的值返回类型是数组。如myd.Items()⑤Remove从字典中移除一个条目是通过键来指定的。myd.Remove(key)如果指定的键不存在会发生错误。⑥RemoveAll 清空字典。三字典的属性有Count、Key、Item、ConpareMode四种属性①Count用于统计字典中键值对的数量。也可以简单理解为统计字典中键的个数②Key用于更改字典中已有的键。如myd.Key(oapp) Orange 如果指定的键不存在则会产生错误。③Item用于写入或读取字典中指定键的值如果指定的键不存在则会新增。如.Item(oapp) 10下面以一个实例来说明字典的应用在下图的A列有不同的键要在对应的键中写入键值然后把C列对应的键去掉并任意增加一个键最后在E,F列写出最后的键和键值,代码如下Sub MyNZsz_37() 第37讲 字典的应用Dim dic As ObjectSheets(37).SelectSet dic CreateObject(Scripting.Dictionary) 引用字典Dim arr(1 To 21), i As Long 建立一个数组用来给键赋值For i 1 To 21arr(i) i 99Next iFor i 1 To 20dic(Cells(i, a).Value) arr(i) 写入键和键值要注意写入的方法Next ii 1Do While Cells(i, 3) dic.Remove (Cells(i, c).Value) 移除C列的键值i i 1Loopdic.Add WW21, 234 增加一个键键值是234[e1].Resize(dic.Count, 1) Application.Transpose(dic.Keys) 转置显示键[f1].Resize(dic.Count, 1) Application.Transpose(dic.items) 转置显示键值End Sub代码截图:代码讲解:1. 上述代码首先创建一个字典对象,然后,把工作表A列的值放到数组作为键第三步是给字典的键赋值第四步移除C列的键对第五步增加一个键第六步显示2 Set dic CreateObject(Scripting.Dictionary) 引用字典 字典的加载有两种办法一个是CreateObject(Scripting.Dictionary)另外一个是引用就是在VBE窗口打开引用找到Dictionary的引用即可本书中大多以SET形式来引用字典3 For i 1 To 21arr(i) i 99Next i赋值一维数组作为键值4 For i 1 To 20dic(Cells(i, a).Value) arr(i) 写入键和键值要注意写入的方法Next i写入键和键值。要特别注意是我实例中的写法5 dic.Remove (Cells(i, c).Value) 移除C列的键值上述代码移除键和键值.6 dic.Add WW21, 234 增加一个键键值是234上述代码增加键和键值.6 [e1].Resize(dic.Count, 1) Application.Transpose(dic.Keys) 转置显示键[f1].Resize(dic.Count, 1) Application.Transpose(dic.items) 转置显示键值显示键和键值运行后的截图今日内容回向1 什么是字典2 字典有哪些属性3 如何给字典赋值4 利用字典如何进行排重