You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何修改VBA宏实现基于单元格值的条件格式:深蓝背景白字

批量设置行格式的VBA代码修改方案

以下是修改后的完整代码,完全满足你的需求:

Sub FormatNightRows()
    Dim r As Long
    Dim lastRow As Long
    
    ' 动态获取C列最后一行数据,适配每日报表的行数变化
    lastRow = Cells(Rows.Count, "C").End(xlUp).Row
    
    For r = 2 To lastRow
        If Cells(r, "C").Value = "Night" Then
            ' 设置目标区域:B到P列
            With Rows(r).Range("b1:p1")
                ' 深蓝色背景
                .Interior.Color = RGB(0, 0, 128) ' 也可以用 vbDarkBlue
                ' 白色字体
                .Font.Color = vbWhite
                ' 可选:字体加粗,不需要就删掉这行
                .Font.Bold = True
            End With
        ' 可选:如果需要清除非Night行的自定义格式,取消下面的注释
        ' Else
        '     With Rows(r).Range("b1:p1")
        '         .Interior.Color = xlNone
        '         .Font.Color = xlAutomatic
        '         .Font.Bold = False
        '     End With
        End If
    Next
End Sub

关键修改说明

  • 新增动态行号获取:不用硬写固定行数100,自动匹配C列最后一行数据,适配每日下载的报表
  • 替换字体设置:把原红色字体改成白色,并添加了可选的加粗设置
  • 添加背景色设置:通过Interior.Color设置深蓝色,两种写法(RGB值/内置常量)都可以用
  • 用With语句优化代码:减少重复调用,让代码更简洁高效

内容的提问来源于stack exchange,提问作者Ryan Peterson

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.15 22:45:32