我试图在excel中应用自定义格式后找到一种更改文本颜色的方法。
让我们假设我的列中的值是2,3和1
如果我按照以下公式自定义此单元格
[<=1]0.0 "year";[>1]0.0 "years"
现在单元格看起来像
现在我想改变&#34;年&#34; /&#34;年&#34;只说一些红色,但没有任何方式。
搜索很多,并且只使用其他颜色来改变完整单元格的字体颜色。
[Red][<=1]0.0 "year";[Red][>1]0.0 "years"
请帮助实现这一目标。
注意:我不想为此使用VBA。
答案 0 :(得分:0)
我认为您无法通过用户界面执行此操作。但是,从VBA可以做到: http://vbadud.wordpress.com/2007/11/03/excel-vba-change-font-color-for-part-of-text/
答案 1 :(得分:0)
Range.NumberFormat property (Excel) 更改单元格中值的外观,而不更改实际值。它可用于更改整个 Number format code 部分的颜色(即正数、负数、零和文本),就像此代码格式一样:
[Blue] #.0 "Positive";[Red] #.0 "Negative";[Green] - "Zero ";[Magenta]@ "Text"
但是,它不能部分改变部分的颜色。
请注意,单元格 [B7] 和 [D7] 具有 SUM
公式以分别添加范围 [B3:B6] 和 [D3:D6]。
使用 VBA:
Range.Characters property (Excel) 可用于更改单元格文本内容 Characters
的外观,就像此代码对范围 [B3:B6] 所做的那样:
Sub Characters_FontColor()
Dim Cll As Range, b As Byte
For Each Cll In ThisWorkbook.Sheets("TEST").Range("B3:B6")
With Cll
For b = 1 To Len(.Value)
.Characters(b, 1).Font.ColorIndex = 2 + b
Next: End With: Next
End Sub
请注意,对于 [B3:B5] 中的单元格,该过程更改了单元格的字体颜色,而不是像单元格 [B6] 中的每个 Character
,这是因为这些单元格的内容不是文字。
关于 Op 的要求:
<块引用>我正在尝试找到一种在 Excel 中应用自定义格式后更改文本颜色的方法。
现在我只想将“Year”/“years”单词的颜色更改为某种红色,但没有任何办法。
搜索了很多,只有一种方法可以使用此方法将整个单元格的字体颜色更改为其他颜色。
Automatic
或其他任何内容。我不想为此使用 VBA。
cells.value
。在 VBA 中使用 Characters
允许更改部分文本的颜色,但为了使用它,cells.value
必须是一个文本字符串,但是单元格的 sum
将为零。要对此进行测试,请将过程 Characters_FontColor
应用于范围 [D3:D6],您将看不到任何变化。