大家好,
在 excel 文件的单元格中,假设我想输入以下公式
如果 (a1>a2,"测试1","测试2")
我想要实现的是让test1和test2的字体具有不同的颜色。
一种方法是使用条件格式并应用不同的规则。但是,我想知道是否有另一种更直接的方法,即直接在if()
公式中指定字体颜色或使用VBA
提前致谢
答案1
使用 VBA 是可能的。我假设你的公式在单元格 B1 中
在 Excel 工作表中,按ALT+F11访问 VBA 编辑器。
在左侧窗格中选择您的工作表。在右侧代码窗口中,选择工作表从下拉菜单中选择改变事件。
其中应有以下子程序的占位符。
Private Sub Worksheet_Change(ByVal Target As Range)
End Sub
将以下代码放入相同位置。
If Target.Address = "$A$1" Or Target.Address = "$A$2" Then
If Range("B1").Formula = "=IF(A1>A2,""test1"",""test2"")" Then
If Range("A1").Value > Range("A2").Value Then
Range("B1").Font.Color = vbRed
Else
Range("B1").Font.Color = vbGreen
End If
End If
End If
在上面的例子中,我使用了标准 vbRed 和 vbGreen。请根据您的选择进行选择。