excel中,A列包含B列,怎样把B列中的内容在A标红凸现出来?

数据量较大,上万行,且A、B两列都是人名,如图示。A列中又重复项,所以不能用条件格式,不然A列里重复项也会标红出来,只需要把B列中的内容在A列中显示出来就行。请问大佬们要怎么操作?

在A列是只标一次?

条件格式里多加个条件就行了

=AND(COUNTIF(B:B,A2)>0,COUNTIF($A$2:A2,A2)=1)

温馨提示:答案为网友推荐,仅供参考
第1个回答  2022-01-21
用宏来做,刚好前面有人问过字体加粗和你这个问题很类似。
Sub 突显标记()
Dim EndRow, FLen, FIndex, RInt, KRow As Long
Dim TStr As String
EndRow = Sheet3.Cells(Sheet3.Rows.Count, 1).End(xlUp).Row
KRow = Sheet3.Cells(Sheet3.Rows.Count, 2).End(xlUp).Row
For i = 1 To EndRow
For j = 1 To KRow
FLen = Len(Sheet3.Range("B" & j))
TStr = Sheet3.Range("A" & i)
RInt = 0
Do
FIndex = InStr(TStr, Sheet3.Range("B" & j))
If FIndex > 0 Then
If RInt = 0 Then
RInt = RInt + FIndex
Else
RInt = RInt + FIndex + FLen - 1
End If
With Sheet3.Range("A" & i).Characters(Start:=RInt, Length:=FLen).Font
.FontStyle = "加粗"
.Size = 22
.Color = RGB(255, 0, 0)
End With
TStr = Mid(TStr, InStr(TStr, Sheet3.Range("B" & j)) + FLen, Len(TStr) - FLen)
Else
Exit Do
End If
Loop Until Len(TStr) < FLen
Next j
Next i
End Sub追问

大佬,您这个有点高端哪,看不懂啊

追答

一、点击开发工具-->Visual Basic进入开发模式。

二、鼠标右键资源管理器新建模块

三、复制代码

Sub 突显标记()

Dim EndRow, FLen, FIndex, RInt, KRow As Long

Dim TStr As String

EndRow = ActiveSheet.Cells(ActiveSheet.Rows.Count, 1).End(xlUp).Row

KRow = ActiveSheet.Cells(ActiveSheet.Rows.Count, 2).End(xlUp).Row

For i = 2 To EndRow

For j = 2 To KRow

FLen = Len(ActiveSheet.Range("B" & j))

TStr = ActiveSheet.Range("A" & i)

RInt = 0

Do

FIndex = InStr(TStr, ActiveSheet.Range("B" & j))

If FIndex > 0 Then

If RInt = 0 Then

RInt = RInt + FIndex

Else

RInt = RInt + FIndex + FLen - 1

End If

With ActiveSheet.Range("A" & i).Characters(Start:=RInt, Length:=FLen).Font

.FontStyle = "加粗"

.Color = RGB(255, 0, 0)

End With

TStr = Mid(TStr, InStr(TStr, ActiveSheet.Range("B" & j)) + FLen, Len(TStr) - FLen)

Else

Exit Do

End If

Loop Until Len(TStr) < FLen

Next j

Next i

End Sub

四、执行

效果:

第2个回答  2022-01-21
很抱歉,这个问题我们无法回答,您可以问问身边的人或者到相关的单位,祝您生活愉快。
相似回答