Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/excel/27.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Excel VBA查找/替换&;文本颜色变化_Excel_Vba_Replace_Find - Fatal编程技术网

Excel VBA查找/替换&;文本颜色变化

Excel VBA查找/替换&;文本颜色变化,excel,vba,replace,find,Excel,Vba,Replace,Find,我有一个三栏的电子表格。A列有一些句子(用黑色字体写)。列C有一个要搜索的术语列表。D列有替换术语列表(以红色字体书写) 我试图在A列中的句子中搜索C列中的搜索词。如果A列包含C列中的任何搜索词,请将A列中的文本替换为D列中的替换词 查找/替换功能非常有效。但是我无法使A列中字符串的替换部分的字体颜色变为红色 有什么想法吗 这是我到目前为止得到的代码 Private Sub CommandButton1_Click() For i = 3 To 6 Worksheets("Shee

我有一个三栏的电子表格。A列有一些句子(用黑色字体写)。列C有一个要搜索的术语列表。D列有替换术语列表(以红色字体书写)

我试图在A列中的句子中搜索C列中的搜索词。如果A列包含C列中的任何搜索词,请将A列中的文本替换为D列中的替换词

查找/替换功能非常有效。但是我无法使A列中字符串的替换部分的字体颜色变为红色

有什么想法吗

这是我到目前为止得到的代码

Private Sub CommandButton1_Click()

For i = 3 To 6

     Worksheets("Sheet1").Range("A2:A35").Select

     Selection.Replace What:=Cells(i, 3).Value, Replacement:=Cells(i, 4).Value, _
     LookAt:=xlPart, SearchOrder:=xlByRows, MatchCase:=False

Next

Worksheets("Sheet1").Cells(1, 1).Select

End Sub
试试这个:

Private Sub CommandButton1_Click()

For i = 3 To 6

     Worksheets("Sheet1").Range("A2:A35").Select

     With Application.ReplaceFormat
       .Font.Color = vbRed
     End With

     Selection.Replace What:=Cells(i, 3).Value, Replacement:=Cells(i, 4).Value, _
     LookAt:=xlPart, SearchOrder:=xlByRows, MatchCase:=False, ReplaceFormat:=True

Next

Worksheets("Sheet1").Cells(1, 1).Select

End Sub

设置用于替换单元格格式的替换条件。然后在对范围对象的Replace方法的后续调用中使用替换条件


你能提供一个演示输入/输出的例子吗?我想我明白你想做什么,但如果我能看到你期望的结果,我会觉得更容易。我想你要做的是设置
ReplaceFormat
,然后设置为
Font.Color=RGB(255,0,0)
或类似的内容。然而,这似乎取代了整个单元格的格式。不仅仅是最初找到的文本。如果单元格中的格式不同,您需要循环遍历所有字符以设置所需的格式。在我的脑海中,您可以找到replace并使用类似
$的内容!{替换文本}$
然后通过搜索
$来跟进您的替换!{*}$!$之前,请先编写>并更新这些节的格式!{}$!字符串的一部分。可能只是为了更容易准确地知道正在更改的内容,而不必检查每个单元格的文本。当然,您也可以使用变体数组或其他方法来查找->替换您自己-这可能是最快的方法。谢谢您回复我。我们快到了。上述解决方案将单元格中的所有单词更改为红色。是否可以仅将字符串的替换部分更改为红色,而单元格中的其余文本保持黑色?