VBA错误“不能更改合并的单元格的一部分”

有VBA错误的问题“不能更改合并的单元格的一部分”

这是我的代码。 它清除第一张纸上的范围,然后隐藏原始样张。 然后,循环会清除工作簿中未隐藏工作表上的范围,因为它们的格式完全相同。 这个代码只有当我进入所有表格并清除合并单元格的格式时才有效。 我需要这些代码在许多工作簿上运行,所以不得不这样做非常耗时,或者在清除范围之前必须添加代码来清除用户格式。

sheets("Raw Samples").select Range("A9:AB3000").select selection.clearcontents activewindow.selectedsheets.visible = False dim ws as worksheet for each ws in activeworkbook.worksheets ws.range("B3:G342").clearContents next ws activeworkbook.sheets("Raw Samples").visible = true 

我的问题是

  1. 下一个循环是否仍然检查隐藏表格上的格式?
  2. 有没有办法避免不必格式化表格,但仍然清除指定的范围?

Q1。 下一个循环是否仍然检查隐藏表格上的格式?

不,不

Q2。 有没有办法避免不必格式化表格,但仍然清除指定的范围?

是。 这是你正在尝试?

 Sub Sample() Dim ws As Worksheet Dim rng As Range Dim boolHidden As Boolean For Each ws In ActiveWorkbook.Worksheets If ws.Name <> "Raw Samples" Then Set rng = ws.Range("B3:G342") If ws.Visible = False Then boolHidden = True ws.Visible = True End If Application.Goto Reference:=rng Selection.ClearContents If boolHidden = True Then ws.Visible = False boolHidden = False End If End If Next ws End Sub