Excel精英培训网

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

[已解决]标记指定连续重复n次的办法

[复制链接]
发表于 2016-2-5 21:53 | 显示全部楼层 |阅读模式
2007版的标记重复值里只有标记唯一和重复1次以上的,有没有办法只是标记连续重复2次、3次、4次等以上的办法啊,或者有没有公式可以弄?请教大师们。
最佳答案
2016-2-6 21:27
用条件格式较难,用vba编程较简单,已成功调试,供参考
Sub rr()
    n = Val(InputBox("请车入连续重复的次数", "输入提示"))
    'Set myrng = Application.InputBox("请在工作表中选定单元格区域", Type:=8)
    Set myrng = [B2].CurrentRegion
    myrng.Font.ColorIndex = xlAutomatic
    For Each c In myrng
        Set Rng = c.Resize(n, 1)
        p = WorksheetFunction.CountIf(Rng, c.Value)
        If p >= n Then
            Rng.Font.Color = -16776961
        End If
    Next
End Sub
excel精英培训的微信平台,每天都会发送excel学习教程和资料。扫一扫明天就可以收到新教程
发表于 2016-2-6 13:48 | 显示全部楼层
本帖最后由 lichuanboy44 于 2016-2-6 13:50 编辑

=countif(range,条件),应该可以标记任何指定条件,没明白你的意思,也没有附件,以下供你参考:
只标记重复2次以上的=countif(range,条件)>1;只标记重复2次的=countif(range,条件)=2
只标记重复3次以上的=countif(range,条件)>2,只标记重复3次的=countif(range,条件)=3
其它同理类推。
再配合使用if,如if(countif(range,条件)=2,"A",""),根据你需要作标记
回复

使用道具 举报

发表于 2016-2-6 14:02 | 显示全部楼层
本帖最后由 lichuanboy44 于 2016-2-6 14:18 编辑

      可能搞懂你的意思了,你指的条件格式中,突出显示单元格规则——重复值——只有重复和唯一两项选择
      但你可以新建规则,如果只对重复值大于2次以上(不含2次)的进行单元格底色标记的话,则2007版步骤如下:
选择要设置格式的单元格区域——条件格式——新建规则——选择规则类型中,选“使用公式确定要设置的单元格格式”,然后在出现的对话框 中的“为符合此公式的值设置格式”下面的输入框内输入=COUNTIF($D$1:$D$21,$D1)>2,再根据你的需要设置格式,如字体颜色,填充色等,注意后面的$D1,表示行相对引用。
     对设置了条件格式的单元格,还可“管理规则”,选定后编辑规则,进行修改
7788.gif

条件格式重复值.zip

4.27 KB, 下载次数: 19

回复

使用道具 举报

 楼主| 发表于 2016-2-6 20:27 | 显示全部楼层
本帖最后由 cjb3030 于 2016-2-6 20:53 编辑
lichuanboy44 发表于 2016-2-6 14:02
可能搞懂你的意思了,你指的条件格式中,突出显示单元格规则——重复值——只有重复和唯一两项选择
...

老师好,可能我还是没表达清楚。你的办法重复的是标出来了,可我是想只标记连续重复的,并不是整列里有重复的都标记,是连续重复n次的,不连续的不标记。如图,同一列只标记连续重复3次以上的,重复2次或单个的不标记。连续重复4次、5次、6次、7次、8次等以上的同理。有办法吗,请问?辛苦了。

求助指定连续重复标记.zip

8.54 KB, 下载次数: 20

回复

使用道具 举报

发表于 2016-2-6 21:27 | 显示全部楼层    本楼为最佳答案   
用条件格式较难,用vba编程较简单,已成功调试,供参考
Sub rr()
    n = Val(InputBox("请车入连续重复的次数", "输入提示"))
    'Set myrng = Application.InputBox("请在工作表中选定单元格区域", Type:=8)
    Set myrng = [B2].CurrentRegion
    myrng.Font.ColorIndex = xlAutomatic
    For Each c In myrng
        Set Rng = c.Resize(n, 1)
        p = WorksheetFunction.CountIf(Rng, c.Value)
        If p >= n Then
            Rng.Font.Color = -16776961
        End If
    Next
End Sub

求助指定连续重复标记.zip

18.5 KB, 下载次数: 49

回复

使用道具 举报

 楼主| 发表于 2016-2-7 11:47 | 显示全部楼层
lichuanboy44 发表于 2016-2-6 21:27
用条件格式较难,用vba编程较简单,已成功调试,供参考
Sub rr()
    n = Val(InputBox("请车入连续重复的 ...

哈哈,谢谢哦。很完美。祝大神猴年新春愉快!
回复

使用道具 举报

发表于 2016-2-22 19:46 | 显示全部楼层
完美的VBA编程,只有你想不到的,没有做不到的万能EXCEL
回复

使用道具 举报

发表于 2016-9-5 17:37 | 显示全部楼层
果然是高手
回复

使用道具 举报

发表于 2017-11-5 09:22 | 显示全部楼层
解压完是空白??????
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-5-29 06:59 , Processed in 0.482417 second(s), 11 queries , Gzip On, Yac On.

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

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