2016-11-10 35 views
0

シートに条件付き書式を追加するvbaコードを作成しようとしていますが、アプリケーション定義エラーが発生しています。以下は私のコードです条件付きフォーマットエラー

With sheet1.Range("C2:C") 
    .FormatConditions.Delete 
    .FormatConditions.Add Type:=xlExpression, Formula1:="=NOT(ISBLANK($B2))" 
    .FormatConditions(1).Interior.ColorIndex = RGB(225, 242, 255) 
End With 

これはなぜ起こっているのでしょうか?

ありがとうございます!

+1

何行にエラーが表示されない:

その後ColorIndexちょうどColorあなたのために変更できますか?私が間違っている場合は私を修正しますが、 'Range(" C2:C ")'は有効な範囲ではありませんか? –

+0

あなたは開始セルの行を指定しているが、最後のセルの行を含まないように見えます。その番号を動的に追加する方法を探していますか? – Clyde

+0

ありがとうございます、私はちょうど終わりの行を含むように範囲を変更しました。しかし、今では、コードのInterior.ColorIndex行に「範囲外のエラーがあります」という問題があります。 – ViggieSmalls

答えて

1

Range("C2:C")有効範囲ではありませんが、それはメーク固定、または以下は、それがダイナミックになり:

With Range("C2:C" & Cells(Rows.Count, "C").End(xlUp).Row) 
    .FormatConditions.Delete 
    .FormatConditions.Add Type:=xlExpression, Formula1:="=NOT(ISBLANK($B2))" 
    .FormatConditions(1).Interior.Color = RGB(225, 242, 255) 
End With