Excel精英培训网

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

[已解决]如何用代码判断指定条件相同组数据?

[复制链接]
发表于 2013-7-11 17:28 | 显示全部楼层 |阅读模式
附件 判断相同附件.rar (9.44 KB, 下载次数: 12)
excel精英培训的微信平台,每天都会发送excel学习教程和资料。扫一扫明天就可以收到新教程
 楼主| 发表于 2013-7-11 20:32 | 显示全部楼层
回复

使用道具 举报

发表于 2013-7-12 00:15 | 显示全部楼层
这是什么啊?好象曾经提过类似的问题的。
回复

使用道具 举报

 楼主| 发表于 2013-7-12 05:34 | 显示全部楼层
w2001pf 发表于 2013-7-12 00:15
这是什么啊?好象曾经提过类似的问题的。

有些类似,但不同。
谢谢老师关注。
回复

使用道具 举报

发表于 2013-7-12 12:03 | 显示全部楼层
连续6组相同还要判断每组的第一位与第三位数相同?连续6组相同了每组的第一位与第三位数会不相同?
回复

使用道具 举报

 楼主| 发表于 2013-7-12 12:31 | 显示全部楼层
w2001pf 发表于 2013-7-12 12:03
连续6组相同还要判断每组的第一位与第三位数相同?连续6组相同了每组的第一位与第三位数会不相同?

图示:


1.jpg
连续六组相同,且第一位27,与第三位27,也同。

=============]

2.jpg

连续六组相同,但第一位30,与第三位28,不相同。

谢谢老师关注。
回复

使用道具 举报

 楼主| 发表于 2013-7-12 20:20 | 显示全部楼层
哪位老师帮帮我啊。
回复

使用道具 举报

发表于 2013-7-12 21:34 | 显示全部楼层    本楼为最佳答案   
Sub test()
Dim ar(), ar2()
ar = [a1:g125].Value
ReDim ar2(1 To UBound(ar), 1 To 1)
For i% = 1 To UBound(ar) Step 3
   If k% <> ar(i + 1, 7) Then
      If n% >= 6 Then
         r = r% + 1
         ar2(r, 1) = k
      End If
      n = 0
      k% = ar(i + 1, 7)
      str1$ = ar(i, 1) & "|" & ar(i, 2) & "|" & ar(i, 4) & "|" & ar(i, 5)
   End If
   If str1$ = ar(i, 1) & "|" & ar(i, 2) & "|" & ar(i, 4) & "|" & ar(i, 5) And str1$ = ar(i + 1, 1) & "|" & ar(i + 1, 2) & "|" & ar(i + 1, 4) & "|" & ar(i + 1, 5) And ar(i, 1) = ar(i, 4) And ar(i + 1, 1) = ar(i + 1, 4) Then
      n = n + 1
   Else
      If n% >= 6 Then
         r = r% + 1
         ar2(r, 1) = k
      End If
      str1$ = ar(i, 1) & "|" & ar(i, 2) & "|" & ar(i, 4) & "|" & ar(i, 5)
      n = 1
   End If
Next
If n% >= 6 Then
         r = r% + 1
         ar2(r, 1) = k
End If
If r Then [q1].Resize(r, 1) = ar2
End Sub

评分

参与人数 1 +1 收起 理由
Hedfshm + 1 很给力!

查看全部评分

回复

使用道具 举报

 楼主| 发表于 2013-7-12 22:19 | 显示全部楼层
上清宫主 发表于 2013-7-12 21:34
Sub test()
Dim ar(), ar2()
ar = [a1:g125].Value

非常感谢老师帮助。用代码试了一下楼主的附件,运行正常的。
但换了数据后,出现了问题,如附件 判断相同附件.zip (43.05 KB, 下载次数: 2)
回复

使用道具 举报

发表于 2013-7-12 22:23 | 显示全部楼层

ar = [a1:g125].Value
换成ar = Range("a1:g" & [a65536].End(3).Row).Value
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-5-15 05:06 , Processed in 0.410575 second(s), 17 queries , Gzip On, Yac On.

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

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