vba字典重复key_字典实例七(需要写入key的值有重复怎么办)

本文介绍了如何在VBA中处理字典中可能出现的重复key问题。通过将姓名与星期用逗号连接作为key,或在循环中创建和释放字典来分别存储每个姓名对应的日期和时间,解决了数据合并与拆分的问题。同时提供了使用Power Query(查询编辑器)的简便方法来达到相同效果。
摘要由CSDN通过智能技术生成

前面一节我们讲了如果一个key对应的item不止一个数据,可以用条目数组的方法,把几个数据联合在一起写入item,那如果是key的值不止一个该怎么办呢?

如下:

129855794_1_20180411065747816

把姓名写入key,因为结果需要保留重复姓名所以肯定不能直接把姓名写入key,如果能把姓名和星期合并起来写入key,把上班时间写入item,这样就不会有重复了。

可是key的值不能这样写:

key(array(a1,a2,a3))=……

所以我们只能另想办法,如果把姓名和星期直接连接在一起,那肯定是可以写入的,为了后面分离的时候方便,我们可以在姓名和星期之间加一个逗号。

代码1:

Sub 格式转化()

Dim d As Object, arr1, arr2, i%, j%, xx, n%

Set d = CreateObject('scripting.dictionary')

arr1 = Range('a2', [h2].End(xlDown))

arr2 = [b1:h1]

For i = 1 To UBound(arr1)

For j = 1 To UBound(arr1, 2) - 1 '或者直接写6

d(arr1(i, 1) & ',' & arr2(1

  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值