我正在审查一些循环遍历大量工作表并刷新每个工作表中的数据连接的代码。由于刷新时表格的大小可能会发生很大变化,因此有必要重置每个工作表上的使用范围,当前代码如下:
sh.Activate
ActiveSheet.UsedRange
Sheets(OriginalSheet).Activate
简单的问题 - 我知道仅运行 sh.UsedRange
不起作用,但是有没有其他方法可以在不激活工作表的情况下重置已用范围?
最佳答案
VBA-Excel:清除Excel工作表(WorkSheet)中的数据
格式:WorkBook.WorkSheet.Range.Clear
示例:
mainworkBook.Sheets(3).UsedRange.Clear
清除特定单元格中的数据:
Dim mainworkBook As Workbook
Set mainworkBook = ActiveWorkbook
mainworkBook.Sheets(“MyFirstMacro”).Range(“A2”).Clear
'Will clear the data from Cell “A2”
清除多个单元格中的数据:
mainworkBook.Sheets(“MyFirstMacro”).Range(“A1,C3”).Clear
'Will clear the data from Cell “A1” and “C3”
清除单元格范围内的数据:
mainworkBook.Sheets(“MyFirstMacro”).Range(“A1:C4”).Clear
'Will clear the data from Range of Cells “A1” to “C4”
清除特定列中的数据:
mainworkBook.Sheets(“MyFirstMacro”).Range(“A:A”).Clear
'Will clear the data from entire column “A”
清除特定行的数据:
mainworkBook.Sheets(“MyFirstMacro”).Range(“2:2″).Clear
'Will clear the data from entire Row 2.
清除所有已使用的数据范围:
mainworkBook.Sheets(3).UsedRange.Clear
清除多个列中的所有数据
mainworkBook.Sheets(“MyFirstMacro”).Range(“A:F”).Clear
'Clear data for Columns from A to F
清除多行中的所有数据
mainworkBook.Sheets(“MyFirstMacro”).Range(“2:5″).Clear
信用:http://excel-macro.tutorialhorizon.com/vba-excel-clear-data-from-excel-sheetworksheet/
关于vba - 重置UsedRange而不激活工作表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31271522/