找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 2546|回复: 0
打印 上一主题 下一主题
收起左侧

利用字典来循环对比两个表,提高效率

[复制链接]
跳转到指定楼层
楼主
ID:59284 发表于 2014-3-1 01:15 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
Public Sub withDic()
Dim dc As Object, rng As Range  '把字典DC定义为Object
Set dc = CreateObject("Scripting.Dictionary")   '设置字典
Debug.Print Now    '输出程序开始的时间,用于计算程序总共用多少时间
For Each rng In ThisWorkbook.Worksheets("123").Range("C2:C1121")  '把一个表的值全部插入字典中
    If Not dc.exists(rng.Value) Then dc.Add rng.Value, "zhangsan"   '插入的过程中要判断是否有重复值,否则会报错;引号中是给每个值给一个键,此处所有键都一样,如果想要不一样可以价格计数器给每个键递增标注
Next
For Each rng In ThisWorkbook.Worksheets("renxing").Range("A1:A153") '开始遍历需要操作的表
    If dc.exists(rng.Value) Then  '如果有相同的就标注有或者没有
        rng.Offset(0, 1).Value = "有"
    Else
        rng.Offset(0, 1).Value = "没有"
    End If
Next
Debug.Print Now '输出程序结束的时间,用于计算程序总共用多少时间
End Sub
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享淘帖 顶 踩
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

快速回复 返回顶部 返回列表