首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

VBA编程中的字典是个什么鬼?

什么是VBA字典?它有什么用?

我相信很多小伙伴们接触过很多字典,像什么新华字典,康熙字典,英语字典,英汉字典等等,也都知道我们可以通过汉字,字母等关键字可以快速的查找到我们所需的内容。VBA的字典也是字典,所以其作用和其它字典一样,都是通过关键字(Key)来查找到与关键字相干内容(专业名字为项(Item))。

在VBA编程中字典(Dictionary)是一个联合数组对象。它是由唯一的关键字(key)和它的项(Item)联合组成。就和一本字典一样,由很多字以及它的注释组成。

怎样创建VBA中字典?

VBA的字典是一个封装好的对象,位于DLL文件中,要创建字典对象有两种方法:

第一种:直接创建法

Dim Myd As Object

Set Myd = CreateObject("Scripting.Dictionary")

第二种:引用法

首先通过VBE编译器里的 工具->引用->浏览中找到scrrun.dll文件,点击确定,具体操作如下:

然后在VBA代码中,用 Dim Myd as new Dectionary 来创建新的字典对象。

VBA字典对象的方法有哪些呢?

字典的方法有六种,分别是: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 清空字典。

VBA编程中的具体用法及解释如下:

VBA字典对象的属性有哪些?

VBA字典对象的熟悉主要有四种,分别是:Count、Key、Item、ConpareMode。

Count用于统计字典中键-值对的数量。也可以简单理解为统计字典中键的个数;

Key用于更改字典中已有的键。如:myd.Key("Job") = "SW Engineer" 如果指定的键不存在,则会产生错误。

Item用于写入或读取字典中指定键的值,如果指定的键不存在,则会新增。如.Item("age") = 32.

CompareMode用于设置或者读取字典对象中比较字符串时的比较模式。

VBA编程中的具体用法及解释如下:

能不能举个VBA字典的栗子?

小伙伴们可能上面的都看懂了,然并卵!下面咱通过一个栗子来加深一下对VBA字典对象的理解。在文章领导给我两天时间汇总客户采购额,而我只用了十分钟来完成中我们使用了RemoveDuplicate方法来去重后,然后再根据公司名称来计算销售额和订单额,其实我们也可以用字典对象来完成金额的汇总,具体实现结果如下:

实现代码如下:

首先解释了什么是字典对象,字典对象有哪些作用,并列举了字典对象的属性和方法,最后通过一个例子来加深对字典对象的理解和应用。

  • 发表于:
  • 原文链接https://kuaibao.qq.com/s/20200118A0CFWX00?refer=cp_1026
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

扫码

添加站长 进交流群

领取专属 10元无门槛券

私享最新 技术干货

扫码加入开发者社群
领券