分享

字典应用实例三(每行都要去重复值)

 L罗乐 2018-04-04



我们先来看下问题:




有的同学可能会想到,数据选项里有删除重复项,删除重复项只能针对一列数据,所以先要把每行数据转置成列,删除重复项,然后再转置。


当然我们可以把原始数据集体转置后,逐列删除重复项,然后再转置,如下:



下面我们看下用字典如何实现每行去重复的效果呢?


具体代码如下:


Sub 去重复()

Dim arr1, arr2(1 To 17), i%, m%, d As Object

arr1 = Range('b2:r7')

Set d = CreateObject('scripting.dictionary')

For i = 1 To UBound(arr1)

        For m = 1 To UBound(arr1, 2)

        arr2(m) = arr1(i, m)

        d(arr2(m)) = ''

        Next

       Cells(i 8, 2).Resize(1, d.Count) = d.keys

       d.RemoveAll

Next

End Sub


上面的循环类似与九九乘法表中的循环,两个for嵌套在一起,实现了从二维数组的每行中取值的效果。


这个例子是数组与字典的结合应用,大家可以练练手。


今天的分享就到这里了!


想更深入的学习视频教程,请进入公众号后台菜单中了解详情!


    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章