2016-05-09 44 views
0

我有一个宏,用于删除特定单元格的内容,如果出现某些单词。目前,我已在本工作簿中设置了1张。宏 - 清除多张纸上的内容

但是,我希望它能够处理多个工作表。

这是我到目前为止有:

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 

回答

1

添加以下内容:

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

道格嗨,感谢您抽空回复的时候了!我是一个很大的业余爱好者!我应该在哪里放这个额外的代码? – paulm99

+0

应该更清楚 –

+0

谢谢道格。此代码可以工作,但仍然只适用于Sheet1。我知道它非常含糊,但可能还有其他东西我缺少? – paulm99