vba - 重置UsedRange而不激活工作表

标签 vba excel

我正在审查一些循环遍历大量工作表并刷新每个工作表中的数据连接的代码。由于刷新时表格的大小可能会发生很大变化,因此有必要重置每个工作表上的使用范围,当前代码如下:

sh.Activate
ActiveSheet.UsedRange
Sheets(OriginalSheet).Activate

简单的问题 - 我知道仅运行 sh.UsedRange 不起作用,但是有没有其他方法可以在不激活工作表的情况下重置已用范围?

最佳答案

VBA-Excel:清除Excel工作表(WorkSheet)中的数据

格式:WorkBook.WorkSheet.Range.Clear

示例:

mainworkBook.Sheets(3).UsedRange.Clear

清除特定单元格中的数据:

Dim main­work­Book As Workbook

Set main­work­Book = 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 col­umn “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/

相关文章:

python - 我是否遗漏了一些东西,或者这个用于计算 Excel 列字符的 Microsoft 算法是否不正确?

excel - 获取文件路径(以文件夹结尾)

excel - CSV 行尾

javascript - 如何实现Excel的ACCRINT

excel - 如何将数据复制到连续的每个其他单元格中?

vba - 如何动态更改 Access 图表的行源

excel - 如何在Excel中将数字保存为字符串?

mysql - 收集数据然后将其导入到 drupal 的最佳方法是什么?

vba复制一定范围并粘贴为图片

excel - CSV 导出 : Preserving leading zeros