【发布时间】:2020-11-11 00:02:39
【问题描述】:
第一次使用该网站,因为我是 VBA 的新手,但我正在尝试编写一段代码来查看我选择的列,在本例中为 A 列,然后遍历每一行并删除空行直到数据集结束。我正在考虑做一个循环,我将引用我的数据集 A1 中的第一个单元格并将行号设置为一个整数,该整数将随着循环的每次完成而增加 1。
Private Sub CommandButton1_Click()
Dim X as Integer
Set X = 1
For X = 1 to 100
If Sheet1.Range("A":X).Value = "" Then Rows(X).EntireRow.Delete
Next X
结束子
感谢您提供的任何帮助或见解!
【问题讨论】:
-
我想知道我的代码出了什么问题。对于 A1:A100 我希望它自动通过并删除空行,但我遇到了麻烦。我认为解决它的最简单方法是每次循环并将 A 列中的行引用更改为 1。比如 A1 = 0 → 删除行,A2 =1 → 保留,A3 =8 → 保留,A4 = 0 → 删除。
-
对于它的价值,在列上过滤空单元格,然后使用 .SpecialCells(xlCellTypeVisible) 删除可见行要简单得多,而且要快得多.参考:stackoverflow.com/questions/17194394/…