如何仅在Excel中有条件地格式化子字符串

时间:2017-02-07 08:15:40

标签: excel formatting conditional

在A1中包含"boy",在B1中包含"This is a boy",我想基于B1搜索A1中的子字符串,并仅格式化子字符串(&#34) ;男孩"仅在B1,而不是B1中的整个句子。 如果在条件格式中使用=Search(A1,B1)=Isnumber(Search(A1,B1)),则会格式化整个句子,这不是我想要的。请告诉我如何解决这个问题。谢谢。

1 个答案:

答案 0 :(得分:3)

据我所知,这只能使用VBA。尝试以下(粗)子:

Sub bold()
On Error GoTo continue 'Otherwise you will receive an error if the substring is missing
For Each cell In Selection
    myString = cell.Offset(0, 1)
    mySearch = cell
    mySearch_length = Len(mySearch)
    mySearch_startPos = WorksheetFunction.Search(mySearch, myString)
    cell.Offset(0, 1).Characters(Start:=mySearch_startPos, Length:=mySearch_length).Font.FontStyle = "Bold" 'Change to something else as you wish
continue:
Next cell
End Sub

这需要您在上面定义的电子表格的相同设置(子字符串要格式化字符串的左侧)并要求您先选择子字符串运行宏。