我想根据来自其他单元格的输入在新单元格中构建文本,并且在新单元格中我想要突出显示具有不同颜色的所选文本,以下是我的示例代码
Sub Macro1()
While ActiveCell.Offset(0, -1) <> ""
ActiveCell.Offset(0, 0).FormulaR1C1 = _
"New Text" & ActiveCell.Offset(0, -1) & ":" & ActiveCell.Offset(0, -2)
ActiveCell.Offset(1, 0).Select
Loop
End Sub
这里我想将颜色定义为“新文本”,我已经看到了如何更改整个单元格,但不是所选文本。怎么做?
答案 0 :(得分:1)
以下是将字符串中的特定字符更改为其他颜色的示例(在本例中为红色):
Sub ChgColour()
vStart = 12
vLength = 3
With ActiveCell.Characters(Start:=vStart, Length:=vLength).Font
.Color = -16776961
End With
End Sub
这会从12日开始改变三个字符的颜色。
我发现,当我不确定是在手动执行步骤时录制宏时,我发现获取VBA语法非常有用的一个提示,然后您可以看到所使用的代码。有时它会生成比所需更多的代码,比如设置所有字体属性而不仅仅是你想要的那些,但通常很容易找出你需要的部分,并用相对的部分替换绝对的单元格/字符引用。 / p>
答案 1 :(得分:-1)
使用此:
Do While ActiveCell.Offset(0, -1) <> ""
ActiveCell.Offset(0, 0).FormulaR1C1 = _
"New Text " & ActiveCell.Offset(0, -1) & ":" & ActiveCell.Offset(0, -2)
With ActiveCell.Characters(Start:=0, Length:=8).Font
.Color = -16776961
End With
ActiveCell.Offset(1, 0).Select
Loop