下面是一个示例代码,用于在VBA中保留所有工作表中的指定范围:
Sub PreserveRangeInAllWorksheets()
Dim ws As Worksheet
Dim preserveRange As Range
' 设置需要保留的范围
Set preserveRange = ThisWorkbook.Worksheets("Sheet1").Range("A1:B10")
' 循环遍历所有工作表
For Each ws In ThisWorkbook.Worksheets
' 确保不处理隐藏的工作表
If ws.Visible = xlSheetVisible Then
' 将保留范围之外的所有单元格清空
ws.Cells.ClearContents
' 将保留范围的值复制到工作表中
preserveRange.Copy ws.Range(preserveRange.Address)
End If
Next ws
End Sub
在上面的示例代码中,我们首先定义了一个名为preserveRange
的范围对象,用于指定要在所有工作表中保留的范围。接下来,我们使用For Each
循环遍历所有工作表,并在循环中执行以下操作:
ws.Cells.ClearContents
清空当前工作表中的所有单元格。preserveRange.Copy
将保留范围的值复制到当前工作表中。通过以上步骤,我们可以确保所有工作表中除了指定范围之外的所有单元格都被清空,同时指定范围的值被保留。
上一篇:保留索引后的矩阵作为向量。
下一篇:保留所有文件更改但删除所有提交