1

私は次のコードを持っていますが、なぜ機能しないのか頭を壁にぶつけています。範囲を $K10 としてコメント行を使用すると、名前付き範囲 rngValidation を割り当てても正常に機能しません。「ptrValidationCells」の定義された名前範囲は $K10 に設定されます。

Sub FormatConditions_2()

    Dim rngToFormat As Range
    Dim rngValidation As Range

    Set rngToFormat = ActiveSheet.Range("inpInputCells")
    Set rngValidation = ActiveSheet.Range("ptrValidationCell")

'    rngToFormat.FormatConditions.Add Type:=xlExpression, Formula1:="=$K10<>FALSE"

    rngToFormat.FormatConditions.Add Type:=xlExpression, Formula1:="=rngValidation <>FALSE"

        With rngToFormat.FormatConditions(2).Interior
            .PatternColorIndex = xlAutomatic
            .Color = RGB(255, 192, 0)
            .TintAndShade = 0
        End With
        With rngToFormat.FormatConditions(2).Font
            .Bold = True
            .Italic = False
            .Color = RGB(192, 0, 0)
            .TintAndShade = 0
        End With

End Sub

ご協力ありがとうございます

4

1 に答える 1

0

FormatConditions は VBA 環境ではなく Workbook 環境で実行されるため (このように言えば)、VBA 変数ではなく名前付き範囲を使用する必要があります。

あるいは、

rngToFormat.FormatConditions.Add Type:=xlExpression, Formula1:="=" & rngValidation.Address & "<>FALSE"

トリックを行う必要があります。

于 2013-02-06T09:19:39.577 に答える