为括号内的文本内容着色

为括号内的文本内容着色

有一个用于存储一些文本内容的 Excel 电子表格(我知道,我知道),但我想知道是否有人知道如何突出显示括号内单元格内的特定文本。

单元格将包含“文本在此处 [带括号的红色文本] 等等”,其中“[带括号的红色文本]”为红色。如能得到任何帮助,我们将不胜感激!

答案1

您需要创建一个宏。在Excel 2010, 按看法查看宏. 输入名称“Dummy”并按创造。在出现的新窗口中,查看项目左侧窗格。双击要应用格式的工作表。复制并粘贴以下代码。

Private Sub Worksheet_Change(ByVal Target As Range)
    Dim Text As String
    Dim Index1 As Long
    Dim Index2 As Long
    Text = Target.Text
    Index2 = 1
    Do
        Index1 = InStr(Index2, Text, "[")
        If Index1 = 0 Then Exit Do
        Index2 = InStr(Index1, Text, "]")
        If Index2 = 0 Then Exit Do
        Target.Characters(Index1, Index2 - Index1 + 1).Font.Color = &HFF
    Loop
End Sub

如果希望格式仅应用于某些单元格,您可以在该Dim Text As String行前插入以下行之一。

    If Target.Row <> 12 Then Exit Sub    ' Only format row "$12"
    If Target.Column <> 12 Then Exit Sub ' Only format column "$L"

现在,每当您完成编辑工作表上的单元格时,它都会将方括号和里面的文本更改为红色。如果有 [多组] [方] 括号,它也会 [起作用],但 [嵌套的 [括号] 将] 失败。

相关内容