在Excel单元格内是否可以使用多种颜色的文本?

6
我有一个包含“Employee John Maybach”的字符串strInfo。
如何使“Employee”部分为黑色文本,“John Maybach”部分为红色?
“Employee”部分始终保持不变,但员工的姓名部分将发生变化,可能是两个部分的名字(John Doe),也可能是三个部分的名字(John Allen Doe),或只是一个名字(John)。
我希望单元格中的“Employee”一词始终为黑色,但单元格中其余的文本,即姓名部分,为红色。这是否可能?
1个回答

7
宏录制器是你的好帮手:
Dim fixedLength As Long
fixedLength = Len("Employee")
ActiveCell.FormulaR1C1 = "Employee Some Employee"
With ActiveCell.Characters(Start:=fixedLength + 2, Length:=Len(ActiveCell) - fixedLength - 1).Font
    .Color = vbRed
End With

4
由于工作簿可能具有不同的调色板,使用 ColorIndex 可能会得到不同的结果,因此使用 .Color = vbRed 等语句可能更为安全。 - Tim Williams
1
我建议将该逻辑放入一个Worksheet_Change事件宏中,以监视该列,这样当您输入名称时,颜色校正会自动应用。 - Jerry Beaucaire

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接