如何基于其他文本突出显示单元格中的特定文本?
在Excel中,我们可以很容易地根据特定文本突出显示单元格,但是在这里,我想突出显示单元格中的特定文本以使其突出而不是整个单元格。 这对于我们大多数人来说可能是一个麻烦。 在本文中,我将讨论在Excel中解决此工作的一些技巧。
使用VBA代码突出显示多个单元格中的一个或多个特定文本
以惊人的功能突出显示多个单元格中的一个或多个特定文本
使用VBA代码根据其他文本突出显示单元格中的特定文本
使用VBA代码突出显示多个单元格中的一个或多个特定文本
例如,我有一系列文本字符串,现在,我要突出显示特定文本“天空在这些单元格中获取“”,结果如下所示:
要仅突出显示单元格中的部分文本,以下VBA代码可以为您提供帮助。
1. 选择要突出显示特定文本的单元格,然后按住 ALT + F11 键打开 Microsoft Visual Basic应用程序 窗口。
2。 点击 插页 > 模块,然后将以下代码粘贴到 模块 窗口。
VBA代码:突出显示单元格中的一部分文本:
Sub HighlightStrings()
Updateby Extendoffice
Application.ScreenUpdating = False
Dim Rng As Range
Dim cFnd As String
Dim xTmp As String
Dim x As Long
Dim m As Long
Dim y As Long
cFnd = InputBox("Enter the text string to highlight")
y = Len(cFnd)
For Each Rng In Selection
With Rng
m = UBound(Split(Rng.Value, cFnd))
If m > 0 Then
xTmp = ""
For x = 0 To m - 1
xTmp = xTmp & Split(Rng.Value, cFnd)(x)
.Characters(Start:=Len(xTmp) + 1, Length:=y).Font.ColorIndex = 3
xTmp = xTmp & cFnd
Next
End If
End With
Next Rng
Application.ScreenUpdating = True
End Sub
3。 然后按 F5 键以运行此代码,然后会弹出一个提示框,提醒您输入仅要突出显示的文本,请参见屏幕截图:
4。 然后点击 OK 按钮,您指定的所有文本仅在单元格中突出显示,请参见屏幕截图:
Tips
:如果您需要突出显示文本字符串中的多个关键字,请应用以下代码:
VBA代码:从文本字符串中突出显示多个关键字:
Sub HighlightStrings()
Updateby Extendoffice
Application.ScreenUpdating = False
Dim Rng As Range
Dim cFnd As String
Dim xTmp As String
Dim x As Long
Dim m As Long
Dim y As Long
Dim xFNum As Integer
Dim xArrFnd As Variant
Dim xStr As String
cFnd = InputBox("Please enter the text, separate them by comma:")
If Len(cFnd) < 1 Then Exit Sub
xArrFnd = Split(cFnd, ",")
For Each Rng In Selection
With Rng
For xFNum = 0 To UBound(xArrFnd)
xStr = xArrFnd(xFNum)
y = Len(xStr)
m = UBound(Split(Rng.Value, xStr))
If m > 0 Then
xTmp = ""
For x = 0 To m - 1
xTmp = xTmp & Split(Rng.Value, xStr)(x)
.Characters(Start:=Len(xTmp) + 1, Length:=y).Font.ColorIndex = 3
xTmp = xTmp & xStr
Next
End If
Next xFNum
End With
Next Rng
Application.ScreenUpdating = True
End Sub
然后,在弹出的框中,输入您要突出显示的关键字(用逗号分隔单词),请参见屏幕截图:
然后,单击 OK 按钮,指定的单词立即突出显示,请参见屏幕截图:
备注:以上代码区分大小写。
以惊人的功能突出显示多个单元格中的一个或多个特定文本
如果您不熟悉Excel中的代码,在这里,我将介绍一个简单的工具- Kutools for Excel,其 标记关键字 功能,您可以一次突出显示单元格中的特定一个或多个关键字。
请注意:应用这些 标记关键字 功能,首先,您应该下载 Kutools for Excel,然后快速轻松地应用这些功能。
安装后 Kutools for Excel,请执行以下操作:
1。 点击 Kutools > 文本 > 标记关键字,请参见屏幕截图:
2。 在 标记关键字 对话框,请执行以下操作:
从中选择要使用的
数据范围
Range 文本框;
选择包含要突出显示的关键字的单元格,也可以将关键字手动输入(以逗号分隔)到
关键字 文本框
最后,您应指定一种字体颜色以通过选中来突出显示文本
标记关键字颜色 选项。 (要为整个包含关键字的单元格上色,请选择
标记单元格内容颜色 选项)
3。 然后,点击 Ok 按钮,所有指定的文本均已突出显示,如下图所示:
备注:此功能不区分大小写,如果要突出显示区分大小写的文本,请检查 区分大小写 ,在 标记关键字 对话框。
使用VBA代码根据其他文本突出显示单元格中的特定文本
这是另一种情况,我有两列,第一列包含文本字符串,第二列是特定文本,现在,我需要根据第二列中的特定文本分别突出显示第一列中的相对文本行。
1。 按住 ALT + F11 键打开 Microsoft Visual Basic应用程序 窗口。
2。 点击 插页 > 模块,然后将以下代码粘贴到 模块 窗口。
VBA代码:根据其他文本突出显示单元格中的一部分文本:
Sub highlight()
Updateby Extendoffice
Dim xStr As String
Dim xRg As Range
Dim xTxt As String
Dim xCell As Range
Dim xChar As String
Dim I As Long
Dim J As Long
On Error Resume Next
If ActiveWindow.RangeSelection.Count > 1 Then
xTxt = ActiveWindow.RangeSelection.AddressLocal
Else
xTxt = ActiveSheet.UsedRange.AddressLocal
End If
LInput:
Set xRg = Application.InputBox("please select the data range:", "Kutools for Excel", xTxt, , , , , 8)
If xRg Is Nothing Then Exit Sub
If xRg.Areas.Count > 1 Then
MsgBox "not support multiple columns"
GoTo LInput
End If
If xRg.Columns.Count <> 2 Then
MsgBox "the selected range can only contain two columns "
GoTo LInput
End If
For I = 0 To xRg.Rows.Count - 1
xStr = xRg.Range("B1").Offset(I, 0).Value
With xRg.Range("A1").Offset(I, 0)
.Font.ColorIndex = 1
For J = 1 To Len(.Text)
If Mid(.Text, J, Len(xStr)) = xStr Then .Characters(J, Len(xStr)).Font.ColorIndex = 3
Next
End With
Next I
End Sub
3。 粘贴代码后,按 F5 要运行它,请弹出一个提示框,提醒您选择包含文本字符串和要突出显示的特定文本的数据范围,请参见屏幕截图:
4。 然后点击 OK 按钮,基于第二列中的特定文本,第一列中的所有相应文本已被染成红色,如以下屏幕截图所示:
更多相关文章:
在Excel中连接两列时的粗体文本
在Excel工作表中,将两个单元格值与公式连接起来后,您可能会发现它不会在组合的公式单元格中加粗文本的一部分。 有时这可能很烦人,当在Excel中连接两列时如何加粗零件文本?
连接单元格列并在Excel中保留文本颜色
众所周知,将单元格列连接或合并为一列时,单元格格式(例如文本字体颜色,数字格式等)将丢失。 本文,我将介绍一些技巧,以将单元格列合并为一个,并在Excel中尽可能轻松地保持文本颜色。
根据另一列中的值显示特定的文本
假设我有一个数字列表,现在,我想根据此列号在另一列中显示一些特定的文本。 例如,如果单元格号在1-100之间,则我希望在相邻的单元格中显示文本“减少”,如果该数字在101-200之间,则显示文本“稳定”,并且该数字大于200 ,显示“ Increase”(增加)文本,如下图所示。 要解决Excel中的此任务,本文中的以下公式可能会对您有所帮助。
在Excel中用文本和数字求和的单元格
例如,我有一个包含数字和文本字符串的值列表,现在,我只想对基于相同文本的数字求和,请看以下屏幕截图。 通常,您不能直接使用文本字符串将列表中的值求和,在这里,我将向您介绍一些公式来处理此任务。
最佳办公生产力工具
将小时转化为分钟 Kutools for Excel!
准备好增强您的 Excel 任务了吗? 利用的力量 Kutools for Excel - 您终极的节省时间的工具。 简化复杂的任务并像专业人士一样浏览数据。 以闪电般的速度体验 Excel!
为什么需要 Kutools for Excel
🛠️ 超过 300 项强大功能: Kutools 包含 300 多项高级功能,可简化您在 1500 多种场景中的工作。
📈 卓越的数据处理能力:合并单元格、删除重复项并执行高级数据转换 - 所有这些都不费吹灰之力!
⏱️ 高效的批量操作:当你可以聪明地工作时,为什么还要付出额外的努力呢? 轻松批量导入、导出、组合和调整数据。
📊 可定制的图表和报告:访问各种附加图表并生成富有洞察力的报告。
🗄️ 强大的导航窗格:通过强大的列管理器、工作表管理器和自定义收藏夹获得优势。
📝 七种类型的下拉列表:通过各种功能和类型的下拉列表使数据输入变得轻而易举。
🎓 用户友好:对于初学者来说轻而易举,对于专家来说是一个强大的工具。
立即下载,与 Excel 一起穿越时空!
阅读更多
免费下载... 采购...
Office Tab 为 Office 带来选项卡式界面,让您的工作更轻松
在Word,Excel,PowerPoint中启用选项卡式编辑和阅读,发布者,Access,Visio和Project。
在同一窗口的新选项卡中而不是在新窗口中打开并创建多个
文档。
每天将您的工作效率提高50%,并减少数百次鼠标单击!