求助VBA代码

qq_20320947 2019-09-10 12:23:26
如何同时选中第一列和第二列所有填充色为黑色的单元格
...全文
699 15 打赏 收藏 转发到动态 举报
写回复
用AI写文章
15 条回复
切换为时间正序
请发表友善的回复…
发表回复
>_<s 2019-09-17
  • 打赏
  • 举报
回复
[quote=引用 14 楼 qq_20320947 的回复:] 如果是条件格式的话你没必要纠结于颜色啊,你不是设置有条件么,你把我二三楼代码里IF里的条件换成你条件格式的条件就可以了。
qq_20320947 2019-09-15
  • 打赏
  • 举报
回复
引用 12 楼 米老鼠yeah的回复:
[quote=引用 11 楼 脆皮大雪糕 的回复:] [quote=引用 8 楼 qq_20320947 的回复:] [quote=引用 7 楼 milaoshu1020的回复:]试试看,看看颜色对不对:

Sub test()
    Dim objRange As Range
    For Each objRange In Sheet1.Range("A1:B10")
        Debug.Print objRange.Interior.Color
    Next
End Sub
你这个代码???怎么会对呢?[/quote] 这是让你检查所有格子的颜色是不是都是一样的。 比如 rgb(0,0,0)是黑色, rgb(5,5,5) 看上去也是挺黑的,但程序就不认为这是同一种颜色[/quote] 楼主说了是用条件格式标记的颜色,这个用代码读不出来[/quote] 谢谢您补充好我的问题,其实换句话中就是选中用条件格式设置好的单元格,例如黑色,这样怎么选中呢? 如果手动填充的黑色用二三楼朋友的回复代码是可以执行的。但实际上还是没处理好我想要的结果。
qq_20320947 2019-09-15
  • 打赏
  • 举报
回复
引用 9 楼 milaoshu1020的回复:
你可以通过这个代码查看自动生成的颜色和你自己填充的颜色是否一致;
这个颜色没错。就是黑色。感谢大家的帮助,目前还是没有研究出来,就是用条件格式设置好的单元格颜色怎么选中,这个问题好难!
米老鼠yeah 2019-09-15
  • 打赏
  • 举报
回复
引用 11 楼 脆皮大雪糕 的回复:
[quote=引用 8 楼 qq_20320947 的回复:] [quote=引用 7 楼 milaoshu1020的回复:]试试看,看看颜色对不对:

Sub test()
    Dim objRange As Range
    For Each objRange In Sheet1.Range("A1:B10")
        Debug.Print objRange.Interior.Color
    Next
End Sub
你这个代码???怎么会对呢?[/quote] 这是让你检查所有格子的颜色是不是都是一样的。 比如 rgb(0,0,0)是黑色, rgb(5,5,5) 看上去也是挺黑的,但程序就不认为这是同一种颜色[/quote] 楼主说了是用条件格式标记的颜色,这个用代码读不出来
脆皮大雪糕 2019-09-14
  • 打赏
  • 举报
回复
引用 8 楼 qq_20320947 的回复:
[quote=引用 7 楼 milaoshu1020的回复:]试试看,看看颜色对不对:

Sub test()
    Dim objRange As Range
    For Each objRange In Sheet1.Range("A1:B10")
        Debug.Print objRange.Interior.Color
    Next
End Sub
你这个代码???怎么会对呢?[/quote] 这是让你检查所有格子的颜色是不是都是一样的。 比如 rgb(0,0,0)是黑色, rgb(5,5,5) 看上去也是挺黑的,但程序就不认为这是同一种颜色
米老鼠yeah 2019-09-14
  • 打赏
  • 举报
回复
首先,建议楼主把问题描述完整:A:B列用条件格式根据 数据 设置了不同的颜色,需要代码实现 选中A:B列中 所有相同颜色的单元格
milaoshu1020 2019-09-13
  • 打赏
  • 举报
回复
你可以通过这个代码查看自动生成的颜色和你自己填充的颜色是否一致;
qq_20320947 2019-09-13
  • 打赏
  • 举报
回复
引用 7 楼 milaoshu1020的回复:
试试看,看看颜色对不对:

Sub test()
Dim objRange As Range
For Each objRange In Sheet1.Range("A1:B10")
Debug.Print objRange.Interior.Color
Next
End Sub
你这个代码???怎么会对呢?
jieru_liu 2019-09-12
  • 打赏
  • 举报
回复
引用 5 楼 qq_20320947 的回复:
不好意思,我运行代码后,还是实现不了。仔细看了才发现,我是先用条件格式获取单元格的颜色为黑色,A1:B10 之间的单元格数值根据条件格式已经设置好了单元格的填充色为黑色,现在主要是要选中条件格式设置后的黑色。运行您的代码后发现单元格通过条件格式设置后的黑色没法选中,如果是用自己手动填充的单元格黑色的,用了您的代码确实能实现。 这个问题困扰很久了,还麻烦您帮忙处理下,谢谢!补充的问题 应该改为 条件格式设置后的单元格为黑色 用VBA代码如何实现选中。
方上传附件吗
milaoshu1020 2019-09-12
  • 打赏
  • 举报
回复
试试看,看看颜色对不对:

Sub test()
Dim objRange As Range
For Each objRange In Sheet1.Range("A1:B10")
Debug.Print objRange.Interior.Color
Next
End Sub
>_<s 2019-09-10
  • 打赏
  • 举报
回复
Sub Test() Dim cel As Range, aa As Range For Each cel In Range("A:B") If cel.Interior.ColorIndex = 1 Then If aa Is Nothing Then Set aa = cel Else Set aa = Union(aa, cel) End If Next If Not aa Is Nothing Then aa.Select End Sub
qq_20320947 2019-09-10
  • 打赏
  • 举报
回复
不好意思,我运行代码后,还是实现不了。仔细看了才发现,我是先用条件格式获取单元格的颜色为黑色,A1:B10 之间的单元格数值根据条件格式已经设置好了单元格的填充色为黑色,现在主要是要选中条件格式设置后的黑色。运行您的代码后发现单元格通过条件格式设置后的黑色没法选中,如果是用自己手动填充的单元格黑色的,用了您的代码确实能实现。 这个问题困扰很久了,还麻烦您帮忙处理下,谢谢!补充的问题 应该改为 条件格式设置后的单元格为黑色 用VBA代码如何实现选中。
>_<s 2019-09-10
  • 打赏
  • 举报
回复
楼上倒数第一张是运行前,倒数第二张是运行后,仔细看是有选中单元格的
>_<s 2019-09-10
  • 打赏
  • 举报
回复
[quote=引用 2 楼 qq_20320947 的回复:] 有具体的区域限制把RANGE里的范围改了就不卡了,如下: Sub Test() Dim cel As Range, aa As Range For Each cel In Range("A1:B10") If cel.Interior.ColorIndex = 1 Then If aa Is Nothing Then Set aa = cel Else Set aa = Union(aa, cel) End If Next If Not aa Is Nothing Then aa.Select End Sub 是能选择中的,除非你单元格的填充色不是纯黑色要选哪个区改ColorIndex 对应颜色的数字就行,颜色对照表和运行结果可以看图片
qq_20320947 2019-09-10
  • 打赏
  • 举报
回复
引用 1 楼 >_<s的回复:
Sub Test() Dim cel As Range, aa As Range For Each cel In Range("A:B") If cel.Interior.ColorIndex = 1 Then If aa Is Nothing Then Set aa = cel Else Set aa = Union(aa, cel) End If Next If Not aa Is Nothing Then aa.Select End Sub
运行后一个单元格都没选中。而且代码运行后很卡。 问题补充下,如A1至B10中每个单元格都有数字值,几个单元格为黑色,几个为黄色,目前想用代码实现,选中填充色为黑色的单元格。你的代码实现不了
大家好,2009年9月份注册以来,在论坛上学到了许多东西,得得许多会员和版主及管理的帮助和关爱,真的很感谢大家,正是因为,正是因为大家都是无私且乐于助人,分享自己的宝贵的技术和心得,且使我对EXCEL充满着激情,在我的脑海里总是浮现: 1. 我是ExcelHome论坛的会员,我很荣幸 2. 工作空余时间我会情不自禁来到ExcelHome之家,看看家,学习一些别人的的心得与帮助一些新会员 3. 那里有太多太多的宝贝,有意外的收获和惊喜(众里寻“她”千百度;踏破铁鞋无觅处,在EH得来全不费功夫) 4. 遇到问题我会在论坛和百度找,再找不到我就会发贴提问。呵呵,这里一定会得到帮助的 正是因为这些,因为大家的无私,所以我也不能自私,呵呵,分享一下打造“自己2010选项卡”,2010选项卡的修改比2003版的菜单修改复杂了,希望能帮到一些对这方面感兴趣的朋友,由于水平够,里面有许多不足,欢迎大家指正 ,呵呵,我八婆了一大堆,进入主题 对于Excel2007和2010,你注意到的第一件事可能就是它新外观,沿用多年的菜单与工具栏的用户界面已被抛弃了,取而代之的是选项卡和功能区的新界面,现在我们一步步来制作一个自己的选项卡(首先申明,有些代码和方法来自ExcelHome论坛和网络,在这里谢谢这些提供代码的朋友 ,俗话说的好“前人载树,后人乘凉”,并非个人所写) 第一步:在桌面上创建一个名为customUI的文件夹 第二步:步骤2 打开记事本,在其中复制下面的XML代码:文件名为CustomUI.xml,编码为UTF-8 保存到桌面customUI文件夹中

2,462

社区成员

发帖
与我相关
我的任务
社区描述
VBA(Visual Basic for Applications)是Visual Basic的一种宏语言,是在其桌面应用程序中执行通用的自动化(OLE)任务的编程语言。
社区管理员
  • VBA
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧