2016-05-09 10 views
0

Ich habe ein Makro, das ich verwende, um den Inhalt bestimmter Zellen zu löschen, wenn bestimmte Wörter erscheinen. Momentan habe ich dies in 1 Blatt auf meiner Arbeitsmappe eingerichtet.Makro - Inhalte auf mehreren Blättern löschen

Allerdings möchte ich es über mehrere Blätter hinweg arbeiten. Diese

ist das, was ich bisher:

Sub CC() 
Dim rCell As Range 

For Each rCell In Sheet1.Range("O9,O11,O13,O15,O17,O19,O21,O23,O25,O27,O29,O31,O33,O35,O37,O39,O41,O43,O45,O47,O49,L10,L12,L14,L16,L18,L20,L22,L24,L26,L28,L30,L32,L34,L36,L38,L40,L42,L44,L46,L48,L50") 
    If InStr(1, rCell.Value, "A") Or InStr(1, rCell.Value, "B") Or InStr(1, rCell.Value, "OK") Or InStr(1, rCell.Value, "C") Then 
     rCell.ClearContents 
    End If 
Next rCell 

Set rCell = Nothing 
Application.OnTime Now + TimeValue("00:00:01"), "CC" 

End Sub 

Antwort

1

Fügen Sie die folgenden:

Dim rCell As Range 
dim sheet as worksheet 
For Each sheet In ActiveWorkbook.Worksheets 
     For Each rCell In sheet.Range("O9,O11,O13,O15,O17,O19,O21,O23,O25,O27,O29,O31,O33,O35,O37,O39,O41,O43,O45,O47,O49,L10,L12,L14,L16,L18,L20,L22,L24,L26,L28,L30,L32,L34,L36,L38,L40,L42,L44,L46,L48,L50") 
     If InStr(1, rCell.Value, "A") Or InStr(1, rCell.Value, "B") Or InStr(1, rCell.Value, "OK") Or InStr(1, rCell.Value, "C") Then 
     rCell.ClearContents 
     End If 
     Next rCell 
Next 

Set rCell = Nothing 
Application.OnTime Now + TimeValue("00:00:01"), "CC" 
+0

Hallo Doug, Vielen Dank für die Zeit nehmen, um zu antworten! Ich bin ein riesiger Amateur dabei! Wo genau sollte ich diesen zusätzlichen Code setzen? – paulm99

+0

sollte das klarer sein –

+0

Danke Doug. Dieser Code funktioniert aber immer noch nur für Sheet1. Ich weiß es sehr vage, aber könnte da noch etwas sein, das mir fehlt? – paulm99

Verwandte Themen