VBA:条件格式内部颜色的IF条件不起作用

时间:2017-11-19 17:06:41

标签: excel vba excel-vba formatting

我有以下代码,我试图使用内部颜色和条件格式检查重复项。但似乎它不起作用。 知道我已经在工作表上手动设置了条件格式。

Private Sub CommandButton1_Click()

    Dim LR2 As Long

    'A MODIFIER
    With Sheets("A")

        LR2 = .Range("B" & Rows.Count).End(xlUp).Row

        For Each cell2 In .Range("A5:A" & LR2)
            If cell2.Value = "" Then

            cell2.Value = TextBox1.Text
            Exit For

            End If
        Next cell2

        If cell2.Offset(, 1).Text <> 0 Then
        'PROBLEM

            If cell2.Interior.Color <> RGB(255, 199, 206) Then

                Label8.Caption = cell2.Offset(, 1).Text
                Label9.Caption = cell2.Offset(, 2).Text
                Label10.Caption = cell2.Offset(, 3).Text
                Label12.Caption = cell2.Offset(, 4).Text
                Label11.Caption = cell2.Offset(, 5).Text
                Label13.Caption = cell2.Offset(, 6).Text
                CommandButton2.Enabled = True

            Else
                cell2.Value = ""
                MsgBox "Votre bac est déjà saisi", vbExclamation, "Bac double"
                Me.TextBox1.Value = ""

            End If

        Else

        cell2.Value = ""
        MsgBox "Prière de saisir un numéro de bac valide", vbExclamation, "Numéro de bac invalide"
        Me.TextBox1.Value = ""

        End If

    End With
End Sub

1 个答案:

答案 0 :(得分:2)

您需要使用DisplayFormat来获取CF格式:

If cell2.DisplayFormat.Interior.Color <> RGB(255, 199, 206) Then