网页资讯视频图片知道文库贴吧地图采购
进入贴吧全吧搜索

 
 
 
日一二三四五六
       
       
       
       
       
       

签到排名:今日本吧第个签到,

本吧因你更精彩,明天继续来努力!

本吧签到人数:0

一键签到
成为超级会员,使用一键签到
一键签到
本月漏签0次!
0
成为超级会员,赠送8张补签卡
如何使用?
点击日历上漏签日期,即可进行补签。
连续签到:天  累计签到:天
0
超级会员单次开通12个月以上,赠送连续签到卡3张
使用连续签到卡
04月24日漏签0天
vba吧 关注:17,099贴子:66,977
  • 看贴

  • 图片

  • 吧主推荐

  • 游戏

  • 1 2 下一页 尾页
  • 37回复贴,共2页
  • ,跳到 页  
<<返回vba吧
>0< 加载中...

急求大神,怎么把多列文本都出现的重复值标记不同颜色

  • 只看楼主
  • 收藏

  • 回复
  • 北海不北
  • 人海孤鸿
    4
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
急求大神,怎么把多列文本都出现的重复值标记不同颜色


  • 北海不北
  • 人海孤鸿
    4
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
求3列以上的,共同重复的文本标记颜色,不是出现2个重复就会标记颜色


2026-04-24 05:43:44
广告
不感兴趣
开通SVIP免广告
  • 北海不北
  • 人海孤鸿
    4
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
网上找到一个,但是还是2个重复就标记颜色了


  • 北海不北
  • 人海孤鸿
    4
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
Sub InterColor2()
Dim myrange As Range, n As Range
h = 3
Do While h < 31
For l = 3 To 20
Set myrange = Cells(l, h)
For Each n In Range("C3:T30")
If n.Value = Cells(l, h).Value Then
Set myrange = Union(myrange, n)
myrange.Interior.Color = RGB((Int(256 * Rnd())), (Int(256 * Rnd())), (Int(256 * Rnd())))
End If
Next
Next
h = h + 1
Loop
End Sub


  • 北海不北
  • 人海孤鸿
    4
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
VBA小白看不懂这些数值的含义,只明白C3:T30……


  • 北海不北
  • 人海孤鸿
    4
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
在线等


  • 北海不北
  • 人海孤鸿
    4
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
有大神知道吗


  • JU968138
  • 初涉江湖
    1
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
截图来看一下,不明白你说的


2026-04-24 05:37:44
广告
不感兴趣
开通SVIP免广告
  • 锦绣文章90
  • 武林新贵
    8
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
如图,你的描述是情形几??


  • AllenSyney
  • 名震江湖
    13
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
截图模拟需求效果


  • 北海不北
  • 人海孤鸿
    4
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼


  • 北海不北
  • 人海孤鸿
    4
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
这张比较简单一点,3列当中都出现的项目才会标记成不同颜色
我用上面我复制的代码执行过,经常会多出很多空格会有颜色,区域无法控制,2个重复就标记,搞得头很大


  • 北海不北
  • 人海孤鸿
    4
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
大神们有时间的麻烦帮小弟发一下,最好能解释下参数含义,我经常会用这个,帮忙的可以发个小红包,🙏🙏


  • tomato9931
  • 人中龙凤
    11
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
Sub InterColor3()
Dim rStart As Integer
Dim rEnd As Integer
Dim cStart As Integer
Dim cEnd As Integer
Dim nColumns As Integer
Dim i As Integer
Dim j As Integer
Dim k As Integer
rStart = 3 '开始行
rEnd = 30 '结束行
cStart = 2 '开始列
cEnd = 4 '结束列
nColumns = cEnd - cStart + 1 '数据列数
For i = rStart To rEnd
If Application.WorksheetFunction.CountIf(Range(Cells(rStart, cStart), Cells(rEnd, cEnd)), Cells(i, cStart)) = nColumns Then
Cells(i, cStart).Interior.Color = RGB((Int(256 * Rnd())), (Int(256 * Rnd())), (Int(256 * Rnd())))
For j = rStart To rEnd
For k = cStart + 1 To cEnd
If Cells(j, k) = Cells(i, cStart) Then
Cells(j, k).Interior.Color = Cells(i, cStart).Interior.Color
Exit For
End If
Next k
Next j
End If
Next i
End Sub


2026-04-24 05:31:44
广告
不感兴趣
开通SVIP免广告
  • 锦绣文章90
  • 武林新贵
    8
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼

Sub 标记多个连贯列中的共同值()
Dim qs As Range, q As Range, r As Long, c As Integer, _
rz As Long, cz As Integer, js As Integer, _
rd As Integer, a As Integer, g As Integer, _
t As Integer, cl As Double
On Error GoTo en
' With Sheet1'此句已注释掉
With ActiveSheet
Set qs = Application.InputBox( _
"请选中数据区域左上角所在的单元格,然后点击确定", "起始参数设置:", Type:=8)
If qs = False Or qs.Cells.Count > 1 Then GoTo en
Set q = .Range(qs.Address).CurrentRegion
'返回一个 Range 对象,该对象表示当前区域。当前区域是以空行与空列的组合为边界的区域。只读
With q
.Select
rz = .Rows.Count '总行数
cz = .Columns.Count '总列数
a = Application.InputBox( _
"你要从几个连贯的列中标记出它们的共同值?输入列数:", _
"提示:数据区域为" & .AddressLocal(0, 0), cz, , , , , 1)
If a = False Or a <= 0 Or a > cz Then GoTo en '不符合列的参数条件就结束
.Interior.Pattern = xlNone '清除填充的颜色
For r = 1 To rz
If Trim(.Cells(r, 1)) <> "" Then '只找非空值
For c = 2 To a
t = WorksheetFunction.CountIf(.Columns(c), .Cells(r, 1))
If t > 0 Then
js = js + 1 '统计起始列之后的连贯列数
ElseIf t = 0 Then
If js > 0 Then js = 0
Exit For '若不是连贯的列,则退出此循环,查找下一单元格
End If
Next c
If js = a - 1 Then '共同值出现在参数列数a的每一列中
cl = RGB(Int(Rnd * 255), Int(Rnd * 255), Int(Rnd * 255))
g = g + 1 '统计标注了几个
.Cells(r, 1).Interior.Color = cl '颜色值
For rd = 1 To rz
For c = 2 To a
If .Cells(rd, c) = .Cells(r, 1) Then
g = g + 1 '统计标注了几个
.Cells(rd, c).Interior.Color = cl '颜色值
End If
Next c
Next rd: js = 0: t = 0 '标记完一个共同值后恢复初始值
End If
End If
Next r
End With
en: Set qs = Nothing: Set q = Nothing '释放
End With
MsgBox "程序从至少" & a & "列中标记出了它们之间的共同值,共" _
& g & "个单元格", IIf(g = 0, 16, 64), "提示:" & Err.Description
End Sub


登录百度账号

扫二维码下载贴吧客户端

下载贴吧APP
看高清直播、视频!
  • 贴吧页面意见反馈
  • 违规贴吧举报反馈通道
  • 贴吧违规信息处理公示
  • 1 2 下一页 尾页
  • 37回复贴,共2页
  • ,跳到 页  
<<返回vba吧
分享到:
©2026 Baidu贴吧协议|隐私政策|吧主制度|意见反馈|网络谣言警示