宏来删除excel中命名范围之间的行

时间:2013-07-15 09:33:17

标签: excel vba excel-vba excel-2007

如何删除命名范围之间的所有行?

我的情况如下

名称范围1:SUBHEADER_001(A1:E1)。显示标题 名称范围2:SUBFOOTER_001(A40:E40)。显示图例和日期。

在这些范围之间,我从sql server插入数据。 SUBFOOTER_001的单元格范围将根据插入的数据库记录而更改。

我想知道如何在命名范围SUBHEADER_001和SUBFOOTER_001之间删除这些数据库值。谢谢。

我已经搜索了相关信息,但遇到了以下代码段,该代码段会删除该范围以下的所有行。

Rows(Range("MYRANGE").Cells(Range("MYRANGE").Rows.Count, 1).Row + 1 & ":65536").Delete

1 个答案:

答案 0 :(得分:0)

您找到的代码会删除Excel 2007之前版本中最后一行的所有行(65536行)

您只想删除页脚范围所在的行。

您可以将65536替换为您的范围:

dim iStartRow as integer
dim iEndRow as integer

iStartRow =range("SUBHEADER_001").row+1
iEndRow = range("SUBFOOTER_001").row-1

Rows(iStartRow & ":" & iEndRow).Delete

当然,如果您不想删除行,也可以使用ClearContents