2016-07-26 11 views
-1

Ich möchte alle roten Zellen in einem Arbeitsblatt ausblenden, indem Sie auf eine Befehlsschaltfläche drücken. Wie kann ich dies mithilfe eines Makros tun? Ich möchte auch einen anderen Knopf haben, um sie zu verbergen. Zur Zeit habe ich die folgenden, die nicht funktioniert:Alle roten Zellen in Excel ausblenden

Sub HideRow()  
Dim i As Long  
Dim LASTROW As Long  
Application.ScreenUpdating = False 

LASTROW = Cells(Rows.Count, 2).End(xlUp).Row 

For i = 1 To LASTROW  
    If Range("C" & i).Interior.ColorIndex = 3 Then  
     Range("C" & i).EntireRow.Hidden = True  
    End If  
Next i 

Application.ScreenUpdating = True 

End Sub 

Danke,

+3

1) Schreiben von Code 2) Ausführen von Code 3) Debug-Code . Wir helfen mit # 3. # 1-2 sind völlig in DEINE Verantwortung. –

+0

Ok, Entschuldigung. Ich hatte mit dem folgenden kommen, aber es funktioniert nicht: Sub HideRow() Dim i As Long Dim LASTROW As Long Application.ScreenUpdating = False LASTROW = Cells (Rows.Count, 2) .End (xlUp) .Row Für i = 1 bis LastRow Wenn Range ("C" & i) .Interior.ColorIndex = 3 Dann Range ("C" & i) .EntireRow.Hidden = True Ende Wenn Nächste 'i Application.ScreenUpdating = True End Sub –

+1

Bitte sagen Sie es im Original Beitrag mit dem [Bearbeiten] (http://stackoverflow.com/posts/38599167/edit) –

Antwort

0

Sind Sie sicher, dass LASTROW gültig ist, vielleicht verwirren Sie Spalten nach oben?

Sie letzte Zeile suchen, indem Cells(Rows.Count, 2), 2 bedeutet Spalte B. Aber Sie überprüfen Farbe in Spalte C Range("C" & i) BTW könnte man einfach Cells(i,3) anstelle von Range("C" & i)