在所有单元格上执行代码,在所有表格中,在整个工作簿中执行

我的问题是,我试图创build一个代码,将单元格的值更改为“X”,如果它包含一个值,跨多个工作表中的每个单元格都需要检查(我很意识到这可能需要很长时间!)。

这个应用程序是一个巨大的matrix,其中“结构”更重要的是实际值。 这是很复杂和很难解释的(它是由第三方和非常老的系统创build的,然后导出为ex​​cel)

我敢肯定,沿着正确的路线,但这只是没有工作,我得到一个“方法不支持”的错误在线For Each Cell In ws

 Sub Usage_X() Dim ws As Worksheet For Each ws In ActiveWorkbook.Worksheets ws.Activate For Each Cell In ws If Cell.Value <> "" Then Cell.Value = "X" End If Next Next End Sub 

我相信你需要遍历一个范围内的每个单元格,而不是一个表单。 所以修改阅读

 Sub Usage_X() Dim ws As Worksheet For Each ws In ActiveWorkbook.Worksheets Set rng = ws.UsedRange For Each Cell In rng If Cell.Value <> "" Then Cell.Value = "X" End If Next Cell Next ws End Sub