设为首页收藏本站Access中国

Office中国论坛/Access中国论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

12
返回列表 发新帖
楼主: pureshadow
打印 上一主题 下一主题

关于剔除重复

[复制链接]

点击这里给我发消息

11#
 楼主| 发表于 2008-11-12 21:57:50 | 显示全部楼层
原帖由 Jonathan.K 于 2008-3-27 10:03 发表
Sub test()
    Dim rngData As Variant
    Dim i As Long
    Dim oDic As Object
   
    Application.ScreenUpdating = False
    Set oDic = CreateObject("Scripting.Dictionary")
    With Sheet1
  ...

现在才看明白里面的意思
这恐怕是运行速度最快的一种了[:31]

点击这里给我发消息

12#
 楼主| 发表于 2009-3-4 09:12:28 | 显示全部楼层
SQ的速度也比不上字典,字典是VBA里比数组更快上十倍的

点击这里给我发消息

13#
 楼主| 发表于 2009-6-1 13:35:23 | 显示全部楼层
函数是有无数种解决方法的,先来一种较易理解的:

例如原数据在A2:A11,要剔除重复。

核心在于把不重复的按序排好,重复的T到一边去:
SMALL(IF(MATCH($A$2: $A$11,$A$2: $A$11,)=ROW($A$1: $A$10),ROW($A$1 ...
pureshadow 发表于 2008-3-26 16:17

回头看看以前自己写的函数,真不是一般的烂
简化一下中间部分:
small(if(match($a$2: $a$11,$a$2: $a$11,)=row($1: $10),row($1: $10),11),row(a1))
您需要登录后才可以回帖 登录 | 注册

本版积分规则

QQ|站长邮箱|小黑屋|手机版|Office中国/Access中国 ( 粤ICP备10043721号-1 )  

GMT+8, 2024-5-7 06:00 , Processed in 0.093895 second(s), 26 queries .

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

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