再Excel中,如何用条件格式或者VBA,指定某单元格内一部分字符变颜色

我可以任意输入一个多位的整数,然后自动将这个数内的偶数变成红色

比如我输入124987978,自动让2 4 8都变成红色,而1 9 7都保持原来的颜色
如果条件格式可以实现,优先选择条件格式
如果条件格式实现不了,能否用VBA来实现呢

提供一个宏作为参考吧,VBA应该可以实现,不过你得要把代码作一些改造:


如下是把第1单元格的“12345678”中的56变成红色

Sub Macro3()
'
' Macro3 Macro
' 宏由 MC SYSTEM 录制,时间: 2015-8-22
'
    Range("A1").Select
    ActiveCell.FormulaR1C1 = "1234567890"
    With ActiveCell.Characters(Start:=1, Length:=4).Font
        .ColorIndex = xlAutomatic
    End With
    With ActiveCell.Characters(Start:=5, Length:=2).Font
        .ColorIndex = 3
    End With
    With ActiveCell.Characters(Start:=7, Length:=4).Font
        .ColorIndex = xlAutomatic
    End With
    Range("E7").Select
End Sub


注:如果单元格内是数字需先设置成文本格式,因为否则VBA更改的格式会被数字格式化

就看不到结果了.

温馨提示:答案为网友推荐,仅供参考
相似回答