excel 使用vba设置条件格式更改字体字号

2025-04-18 09:33:03
推荐回答(3个)
回答1:

此题无解,条件格式无法改变字体、字号,本来以为下面的代码满足你的要求:

Sub Macro1()
    Range("A1:Y161").Select
    Selection.FormatConditions.Delete
    Selection.FormatConditions.Add Type:=xlCellValue, Operator:=xlEqual, _
        Formula1:="=""(此项空白)"""
    With Selection.FormatConditions(1).Font
        .Name = "楷体"
        .Size = 8
    End With
End Sub

结果系统提示无法改变字体、字号。


如果数据不太多,可以自己监控数据变化,例如:

Private Sub Worksheet_Change(ByVal Target As Range)
    Dim C As Range
    For Each C In Target
        If C.Value = "(此项空白)" Then
            C.Font.Name = "楷体"
            C.Font.Size = 8
        End If
    Next C
End Sub

回答2:

用定位条件(Ctrl+G)--空值
选出区域内的空值单元格,可以一次性改字体及大小

回答3:

以上是写好的VBA

由于你没有说当 单元格内容不为 (此项空白)  时用什么字体

我就随便写成宋体 10 号了

你需要可修改