【问题标题】:Change Row Color in Excel Range if condition is met in vb.Net如果在 vb.Net 中满足条件,则更改 Excel 范围中的行颜色
【发布时间】:2021-12-12 15:44:12
【问题描述】:

在“A”到“H”范围内,当满足 H 单元格中的条件时,我想更改颜色。我的代码有效,但如果我使用这个代码,它会改变整个行的颜色:

    For Each h In shXL.Range("A2:H150").Columns(8).Cells
                If h.Value > 14 Then
                    h.EntireRow.Interior.Color = Color.FromArgb(251, 254, 138)
                End If
    Next

当我使用这个时,颜色会随着从 H 到 N 的变化而变化:

For Each h In shXL.Range("A2:H150").Columns(8).Cells
            If h.Value > 14 Then
                h.Range("A1:H1").Interior.Color = Color.FromArgb(251, 254, 138)
            End If
Next

怎么做?

【问题讨论】:

  • 重新打标签,注意VB.Net和VBA是不一样的。

标签: excel vba if-statement colors


【解决方案1】:

您可以通过多种方式进行操作,如下所示。

在您的示例中,A1:H1 相对于 H 列,因此 H 到 N 而不是 A 到 H。

For Each h In shXL.Range("H2:H150")
   If h.Value > 14 Then
       h.offset(,-7).resize(,8).Interior.Color = Color.FromArgb(251, 254, 138)
   End If
Next

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多