首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >如何在VBA/Excel中删除X行以下的所有内容?

如何在VBA/Excel中删除X行以下的所有内容?
EN

Stack Overflow用户
提问于 2012-08-07 05:12:02
回答 4查看 124.4K关注 0票数 22

我有一个很长的变量X,它包含一个数字。假设是415。

如何删除第415行及以下工作表中的所有内容?

我想确保我的电子表格在第415行和它下面的任何其他位置都是干净的。

我该怎么做呢?谢谢。

EN

回答 4

Stack Overflow用户

回答已采纳

发布于 2012-08-07 05:30:05

听起来像下面这样的东西可以满足你的需求:

代码语言:javascript
复制
With Sheets("Sheet1")
    .Rows( X & ":" & .Rows.Count).Delete
End With

其中X是=行号的变量( 415 )

票数 47
EN

Stack Overflow用户

发布于 2012-08-07 23:21:50

另一种选择是Sheet1.Rows(x & ":" & Sheet1.Rows.Count).ClearContents (或.Clear)。您可能希望使用此方法而不是.Delete的原因是,任何在已删除区域中具有依赖关系的单元格(例如,引用这些单元格的公式,即使为空)最终都会显示#REF。此方法将保留对清除的单元格的公式引用。

票数 14
EN

Stack Overflow用户

发布于 2017-04-13 16:40:14

此函数将清除从指定行和列开始的工作表数据:

代码语言:javascript
复制
Sub ClearWKSData(wksCur As Worksheet, iFirstRow As Integer, iFirstCol As Integer)

Dim iUsedCols As Integer
Dim iUsedRows As Integer

iUsedRows = wksCur.UsedRange.Row + wksCur.UsedRange.Rows.Count - 1
iUsedCols = wksCur.UsedRange.Column + wksCur.UsedRange.Columns.Count - 1

If iUsedRows > iFirstRow And iUsedCols > iFirstCol Then
    wksCur.Range(wksCur.Cells(iFirstRow, iFirstCol), wksCur.Cells(iUsedRows, iUsedCols)).Clear
End If

End Sub
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/11835997

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档