数据量较大,上万行,且A、B两列都是人名,如图示。A列中又重复项,所以不能用条件格式,不然A列里重复项也会标红出来,只需要把B列中的内容在A列中显示出来就行。请问大佬们要怎么操作?
大佬,您这个有点高端哪,看不懂啊
追答一、点击开发工具-->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
四、执行
效果: