Excel精英培训网

 找回密码
 注册
数据透视表40+个常用小技巧,让你一次学会!
查看: 1942|回复: 3

打印出A列相同 C列不同的数据的A列的名字 A重复大于2次以上的

[复制链接]
发表于 2019-8-23 17:39 | 显示全部楼层 |阅读模式
本帖最后由 爱疯 于 2019-11-8 10:29 编辑

求助 怎么打印出A列相同 C列不同的数据的A列的名字  A重复大于2次以上的,拜托大神!!!
发表于 2019-8-25 11:14 | 显示全部楼层
有更具体一些的描述么,假设极端情况如下,要怎么统计?
A列:1,1,1,1,1,1,1,1,1,1,1
C列:2,2,2,3,4,5,6,6,7,7,7

回复

使用道具 举报

 楼主| 发表于 2019-8-26 09:31 | 显示全部楼层
比如D列是商品ID,H列为价格,一个商品肯定是对应一个价格,当出现同样的商品对应不同的价格的时候给个提示‘$某某产品对应的价格不一致’这样就好。D列是可能出现重复的,重复次数不限,拜托大神!!!
回复

使用道具 举报

发表于 2019-8-26 17:10 | 显示全部楼层
  1. Sub test()
  2.     Dim DicA As Object, DicB As Object, d As Variant
  3.     Dim arrA As Variant, arrB As Variant, arrTgt As Variant, arrTmp As Variant
  4.     Dim iNum As Integer, i As Integer
  5.    
  6.     '读取所需字段
  7.     '假设工作表名称是:Sheet1
  8.     '假设读取数据在: A 列与 C 列
  9.     '请自行根据实际情况修改
  10.     With Sheets("Sheet1")
  11.         '取数据行数
  12.         iNum = .Cells(Rows.Count, "A").End(xlUp).Row - 1
  13.         arrA = .Range("A2").Resize(iNum, 1)
  14.         arrB = .Range("C2").Resize(iNum, 1)
  15.     End With
  16.    
  17.     '构建两个字典
  18.     Set DicA = CreateObject("Scripting.Dictionary")
  19.     Set DicB = CreateObject("Scripting.Dictionary")
  20.     For i = 1 To iNum
  21.         DicA(arrA(i, 1)) = 0
  22.         DicB(arrA(i, 1) & "-" & arrB(i, 1)) = arrA(i, 1)
  23.     Next
  24.    
  25.     '统计,A 列同一个项在 C 列有几个不同的值
  26.     For Each d In DicB
  27.         DicA(DicB(d)) = DicA(DicB(d)) + 1
  28.     Next
  29.    
  30.     '去掉不重复的项,留下数量在 2 个以上的项
  31.     For Each d In DicA
  32.         If DicA(d) = 1 Then DicA.Remove (d)
  33.     Next
  34.    
  35.     '输出结果
  36.     With Sheets("Sheet1")
  37.         .Range("H2").Resize(DicA.Count, 1) = Application.WorksheetFunction.Transpose(DicA.Keys)
  38.         .Range("I2").Resize(DicA.Count, 1) = Application.WorksheetFunction.Transpose(DicA.items)
  39.     End With
  40.    
  41.     '收尾
  42.     Set DicA = Nothing
  43.     Set DicB = Nothing
  44. End Sub
复制代码

好像你第一次提问和第二次提问的内容又不同了,我还是按照 A 、C 列做了演示,只要 A 相同而 C 不同的都列出来。
你自己修改吧。
回复

使用道具 举报

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

本版积分规则

小黑屋|手机版|Archiver|Excel精英培训 ( 豫ICP备11015029号 )

GMT+8, 2024-4-24 19:05 , Processed in 0.252918 second(s), 9 queries , Gzip On, Yac On.

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

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