精华内容
下载资源
问答
  • 通常这些相同的重复,但我试图抓住的是当他们一起重复时(请参阅下面的示例图片从我以前的帖子中获取)。有些背景可能有助于提高这一点:这是对我之前提出的here问题之的后续跟进。我有一个条件格式公式:=NOT...

    我尝试使用Scripting Dictionary,以便能够在存在不一致的地方(即空白或两个相同值或相同值组之间的不同值)查找并最终高亮显示相同值或相同值组的组。通常这些相同的值会重复,但我试图抓住的是当他们不一起重复时(请参阅下面的示例图片从我以前的帖子中获取)。

    hf14f.png

    有些背景可能有助于提高这一点:

    这是对我之前提出的here问题之一的后续跟进。我有一个条件格式公式:

    =NOT(AND(IFERROR(COUNTIF(OFFSET(A1,0,0,-COUNTIF($A$1:$A1,A2)),A2),0)=IFERROR(COUNTIF($A$1:$A1,A2),0),IFERROR(COUNTIF(OFFSET(A3,0,0,COUNTIF($A3:$A$5422,A2)),A2),0)=IFERROR(COUNTIF($A3:$A$5422,A2),0),A2<>""))这完美地工作。然而,在接受这个公式作为上一个问题的答案之后,我意识到使用任何类型的条件格式来处理我通常处理的数据量(具有140个一致列的15000+行)是非常缓慢的尝试,两者都是当应用公式和事后过滤/调整时。我也尝试通过“帮手列”路线来应用这个公式,但毫不奇怪,这同样缓慢。

    所以,我现在在哪里:

    从本质上讲,我试图将该公式转换成一段代码,它能够执行相同的操作,但效率更高,因此我开始考虑使用Scripting Dictionary作为加速代码执行时间的方式。我列出了一些步骤,所以我知道我需要做什么。但是,我觉得我错误地执行了,这就是为什么我在这里寻求帮助。以下是我尝试使用Scripting Dictionary来完成列A(我的目标列)中突出显示的不一致以及我想要完成此任务所需执行的步骤:

    'dump column A into Array

    '(Using Scripting.Dictionary) While cycling through check if duplicate

    'IF duplicate check to make sure there is the same value either/or/both in the contiguous slot before/after the one being checked

    'If not, then save this value (so we can go back and highlight all instances of this value at the end)

    'Cycle through all trouble values and highlight all of their instances.

    Sub NewandImprovedXIDCheck()

    Dim d As Long, str As String, columnA As Variant

    Dim dXIDs As Object

    Application.ScreenUpdating = False

    Set dXIDs = CreateObject("Scripting.Dictionary")

    dXIDs.comparemode = vbTextCompare

    With ActiveSheet

    With .Cells(1, 1).CurrentRegion

    With .Resize(.Rows.Count - 1, .Columns.Count).Offset(1, 0)

    '.Value2 is faster than using .Value

    columnA = .Columns(1).Value2

    For d = LBound(columnA, 1) To UBound(columnA, 1)

    str = columnA(d, 1)

    If dXIDs.exists(str) Then

    'the key exists in the dictionary

    'Check if beside its like counterparts

    If Not UBound(columnA, 1) Then

    If (str <> columnA(d - 1, 1) And str <> columnA(d + 1, 1)) Or str <> columnA(d - 1, 1) Or str <> columnA(d + 1, 1) Then

    'append the current row

    dXIDs.Item(str) = dXIDs.Item(str) & Chr(44) & "A" & d

    End If

    End If

    Else

    'the key does not exist in the dictionary; store the current row

    dXIDs.Add Key:=str, Item:="A" & d

    End If

    Next d

    'reuse a variant var to provide row highlighting

    Erase columnA

    For Each columnA In dXIDs.keys

    'if there is more than a single cell address, highlight all

    If CBool(InStr(1, dXIDs.Item(columnA), Chr(44))) Then _

    .Range(dXIDs.Item(columnA)).Interior.Color = vbRed

    Next columnA

    End With

    End With

    End With

    dXIDs.RemoveAll: Set dXIDs = Nothing

    Application.ScreenUpdating = True

    End Sub我觉得我的代码执行过程中我的逻辑出错了,但似乎无法确定在哪里或如何纠正它。任何帮助将不胜感激。如果你可以提供任何类型的代码片段,这也是一个很大的帮助。

    展开全文
  • VBA常用技巧

    2014-12-21 16:39:28
    技巧155 不重复值的录入 12 技巧156 获得当月的最后天 12 技巧157 四舍五入运算 12 157-1 极小值修正法 12 157-2 调用工作表函数法 12 技巧158 使用字符串函数 12 技巧159 使用日期函数 12 技巧160 判断是否为数值...
  • VBA与数据库

    2015-11-19 18:07:38
    •实例3-11 查询不重复的字段记录(DISTINCT) 63 •实例3-12 利用Like运算符进行模糊查询 64 •实例3-13 查询某区间内的记录(BETWEEN) 65 •实例3-14 查询存在于某个集合里面的记录(IN) 67 •实例3-15 将查询...
  • 01038设置新工作簿中的工作表个数 01039设置文件的默认位置 01040设置保存自动恢复文件的时间间隔和保存位置 01041停止屏幕刷新 01042使事件无效 01043使取消键无效 01044显示警告信息对话框 01045设置使用的...
  • 150.把第一列=某个对应的第二列的内容连在一起,并用、隔开 151.取得系统使用模式 152.计算机注销/关机/重启 153.更改计算机名称 154.从n位开始取出字符串中的汉字、英文字母、数字 155.在指定列中寻找含有指定...
  • VBA编程技巧大全

    2013-08-05 09:03:19
    技巧155 不重复值的录入 383 技巧156 获得当月的最后天 385 技巧157 四舍五入运算 386 157-1 极小值修正法 386 157-2 调用工作表函数法 387 技巧158 使用字符串函数 387 技巧159 使用日期函数 389 技巧160 判断...
  • Excel VBA与数据库整合应用范例精讲

    热门讨论 2011-10-29 18:48:38
    实例3-11 查询不重复的字段记录(DISTINCT) 实例3-12 利用Like运算符进行模糊查询 实例3-13 查询某区间内的记录(BETWEEN) 实例3-14 查询存在于某个集合里面的记录(IN) 实例3-15 将查询结果进行排序...
  • 实例3-11 查询不重复的字段记录(DISTINCT) 实例3-12 利用Like运算符进行模糊查询 实例3-13 查询某区间内的记录(BETWEEN) 实例3-14 查询存在于某个集合里面的记录(IN) 实例3-15 将查询结果进行排序...
  • ║ 【添加注解】 【工具箱选项】 【锁定鼠标】 【生成随机不重复值】 【获取系统菜单】 ║ ║ 【连接字符串】 【屏幕截图】 【任务管理器】 【控制单列不重复值】 【生成系统图标A】 ║ ║ 【隔行或插入】 【屏幕...
  • Excel百宝箱8.0

    2011-06-07 21:32:17
    函数功能与参数:返回不重复值。可以对1到253(Excel2003中是1到28区域取唯一值;前三为必选参数,其余为可选参数。第参数为ROW时先行后取值,为COLUMN时先后行(不分大小写),第三参数开始为引用...
  • 函数功能与参数:返回不重复值。可以对1到253(Excel2003中是1到28区域取唯一值;前三为必选参数,其余为可选参数。第参数为ROW时先行后取值,为COLUMN时先后行(不分大小写),第三参数开始为引用...
  • 函数功能与参数:返回不重复值。可以对1到253(Excel2003中是1到28区域取唯一值;前三为必选参数,其余为可选参数。第参数为ROW时先行后取值,为COLUMN时先后行(不分大小写),第三参数开始为引用...
  • EXCEL集成工具箱V6.0

    2010-09-11 01:44:37
    财 务 工 具 【自动填充】 不同于EXCEL的CTRL+D功能,能对选中的某数据不同存储格区域的空白处,取相邻的上一不为空的存储格内容同时作数据源的自动填充。1分钟内能处理手工需几小时才能完成的几万行ERP或KingDee...
  • 【自动填充】 不同于EXCEL的CTRL+D功能,能对选中的某数据不同存储格区域的空白处,取相邻的上一不为空的存储格内容同时作数据源的自动填充。1分钟内能处理手工需几小时才能完成的几万行ERP或KingDee原始数据。...
  • 【提取选区不重复值】将选择区域的数据,置于当前列中,忽略重复值 【清除中重复值】将选择中重复出现的数据删除(提供保留第次出现还是最后次出现的数据 的选择机会,也提供是否对删除数据加背景色突出的选择...
  • Excel百宝箱

    2012-10-27 17:09:21
    【禁止重复值】:可以指定某列不允许重复,指定后该列输入重复值时会自动提示 【标示重复值】:将重复出现的数据用不同颜色分别标示出来,不同重复值用不同颜色 【删除空白单元格所在行】:输入1则删除空白行(整行...
  • Excel百宝箱9.0无限制破解版

    热门讨论 2012-02-03 19:05:29
    【禁止重复值】:可以指定某列不允许重复,指定后该列输入重复值时会自动提示 【标示重复值】:将重复出现的数据用不同颜色分别标示出来,不同重复值用不同颜色 【删除空白单元格所在行】:输入1则删除空白行(整行...
  • 财 务 工 具 【自动填充】 不同于EXCEL的CTRL+D功能,能对选中的某数据不同存储格区域的空白处,取相邻的上一不为空的存储格内容同时作数据源的自动填充。1分钟内能处理手工需几小时才能完成的几万行ERP或KingDee...
  • 【自动填充】 不同于EXCEL的CTRL+D功能,能对选中的某数据不同存储格区域的空白处,取相邻的上一不为空的存储格内容同时作数据源的自动填充。1分钟内能处理手工需几小时才能完成的几万行ERP或KingDee原始数据。...
  • EXCEL百宝箱8.0终极版

    2011-11-05 16:48:02
    函数功能与参数:返回不重复值。可以对1到253(Excel2003中是1到28区域取唯一值;前三为必选参数,其余为可选参数。第参数为ROW时先行后取值,为COLUMN时先后行(不分大小写),第三参数开始为引用...
  • excel 工具箱

    2012-01-22 15:04:34
    【禁止重复值】:可以指定某列不允许重复,指定后该列输入重复值时会自动提示 【标示重复值】:将重复出现的数据用不同颜色分别标示出来,不同重复值用不同颜色 【删除空白单元格所在行】:输入1则删除空白行(整行...
  • 【自动填充】 不同于EXCEL的CTRL+D功能,能对选中的某数据不同存储格区域的空白处,取相邻的上一不为空的存储格内容同时作数据源的自动填充。1分钟内能处理手工需几小时才能完成的几万行ERP或KingDee原始数据。...
  • VBSCRIPT中文手册

    热门讨论 2010-11-12 10:13:06
    IsNumeric 函数 返回 Boolean ,表示表达式能否当作一个数,用来计算。 IsObject 函数 返回 Boolean ,表示表达式是否引用了有效的“自动”对象。 Join 函数 返回连接许多包含在个数组中的子串而创建的字符...
  • vb Script参考文档

    2009-07-28 22:13:02
    IsNumeric 函数 返回 Boolean ,表示表达式能否当作一个数,用来计算。 IsObject 函数 返回 Boolean ,表示表达式是否引用了有效的“自动”对象。 Join 函数 返回连接许多包含在个数组中的子串而创建的字符...
  • • 统计开奖号码中不重复数字个数 • 取得零件规格中的最后序号 • 利用TEXT函数格式化设备编号 • 从身份证号码中提取员工的生日信息 • 使用TEXT 函数显示中文格式的年份 • 将数值转换为商业发票中的中文大写金额...
  • 22210.3.2 向一个表添加固定查找列表 22510.4 向表或者查询添加子数据表 22610.4.1 表子数据表 22710.4.2 查询子数据表 22810.5 外连接、自连接和Theta连接 23010.5.1 创建外连接 23010.5.2 创建自连接 23110.5.3 ...
  • 22210.3.2 向一个表添加固定查找列表 22510.4 向表或者查询添加子数据表 22610.4.1 表子数据表 22710.4.2 查询子数据表 22810.5 外连接、自连接和Theta连接 23010.5.1 创建外连接 23010.5.2 创建自连接 23110.5.3 ...
  • 22210.3.2 向一个表添加固定查找列表 22510.4 向表或者查询添加子数据表 22610.4.1 表子数据表 22710.4.2 查询子数据表 22810.5 外连接、自连接和Theta连接 23010.5.1 创建外连接 23010.5.2 创建自连接 23110.5.3 ...
  • 22210.3.2 向一个表添加固定查找列表 22510.4 向表或者查询添加子数据表 22610.4.1 表子数据表 22710.4.2 查询子数据表 22810.5 外连接、自连接和Theta连接 23010.5.1 创建外连接 23010.5.2 创建自连接 23110.5.3 ...

空空如也

空空如也

1 2 3 4
收藏数 72
精华内容 28
关键字:

vba获取一列不重复值个数