我正在尝试编写一些将在excel单元格中查找的代码,如果它包含我要查找的单词并使其变为粗体。到目前为止我编写了以下代码
With Worksheets("Label Print").Cells(i, J)
.Characters(Start:=InStr(.Value, “Name”), Length:=Len(“Name”)).Font.Bold = True
End With
问题是,如果“名称”在单元格中出现两次(或更多次),它将仅突出显示它的第一次出现。
提前谢谢
答案 0 :(得分:3)
这是一个功能,它需要检查单元格以及要搜索的单词并加粗该单词的所有情况:
Public Sub BoldWord(rngCell As Range, sWord As String)
Dim iPlace As Integer
iPlace = InStr(1, rngCell.Value, sWord, vbTextCompare)
Do While iPlace > 0
rngCell.Characters(Start:=iPlace, Length:=Len(sWord)).Font.Bold = True
iPlace = InStr(iPlace + 1, rngCell.Value, sWord, vbTextCompare)
Loop
End Sub
注1:rngCell必须是单个单元格。
注2:搜索不区分大小写...如有必要,请更改vbTextCompare。