Jac*_*ble 3 excel vba text highlight
我想编写一个VBA函数来突出显示excel单元格中的特定文本.这可能吗?我一直在谷歌搜索,但目前还不清楚.
为了澄清,我想在特定列中搜索文本值(实际上是值列表)并以黄色突出显示匹配的文本.
注意:这是我最终做的事情:
Sub Colors()
Dim searchString As String
Dim targetString As String
Dim startPos As Integer
searchString = "abc"
targetString = Cells(2, 1).Value
startPos = InStr(targetString, searchString)
If startPos > 0 Then
Cells(2, 1).Characters(startPos, Len(searchString)).Font.Color = vbRed
End If
End Sub
Run Code Online (Sandbox Code Playgroud)
Tra*_*ace 13
这是基本原则,我假设自定义此代码不是您要求的(因为没有提供有关此内容的详细信息):
Sub Colors()
With Range("A1")
.Value = "Test"
.Characters(2, 2).Font.Color = vbGreen
End With
End Sub
Run Code Online (Sandbox Code Playgroud)
小描述虽然它说得很好:第一个"2"指的是需要着色的第一个字符,第二个"2"指的是长度.
这仅适用于未来的读者试图突出细胞内的特定字符串模式,
(这就是我解释问题的方法)你可以在这个例子中设置F1中搜索的字符串
Sub test4String2color()
Dim strTest As String
Dim strLen As Integer
strTest = Range("F1")
strLen = Len(strTest)
For Each cell In Range("A1:D100")
If InStr(cell, strTest) > 0 Then
cell.Characters(InStr(cell, strTest), strLen).Font.Color = vbRed
End If
Next
End Sub
Run Code Online (Sandbox Code Playgroud)