字典用法的补充—index函数

很多前辈都谈过字典的用法,而我这里要说的是关于在字典中取key和item的值的方法。

这个是我在回答http://club.excelhome.net/viewthread.php?tid=520400&pid=3429923&page=1&extra=page%3D1这个帖子时想到的。

 

取上面数据其中出现只有一次的数据放到sheet2中。
我首先想到的就是用字典,于是就有了下面的部分代码:

 

至此,字典完成,在keys中,分别是1、2、3、4、5,在items中分别是2、2、2、1、1。
现在要把item为1的key提取出来,以往我的想法是:

 

即:分别把keys和items赋给s和ss,然后对比,将item中等于1的key传递到另一个数组中。
这时,我突然记起,取数组arr的第n行赋值到某行区域的代码:[a6:c6]=Application.Index(arr,n)
于是想到,用index函数可以取字典中的值吗?
接着,我开始修改代码,便有了下面:

 

我用Sheet2.[a1].Resize(d.Count) = WorksheetFunction.Transpose(d.keys)一试,结果却多了一个2,成了2、4、5。此时才醒悟,在删除时,一般都是逆向的,以免下面的数据取代了已删除数据的位置,于是就有了最终的代码。

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值