VBA循环遍历范围,如果循环范围单元格为空,则删除某些空行

问题描述 投票:0回答:0

我是 VBA 的新手,刚刚创建了一个宏表,可以从 3rd 方软件生成的 CSV 文件中提取数据。问题是,由于某种原因,当我从 CSV 文件中提取日期时,会有一些空行。

我想遍历从 E7 到 E9999 的列 E 以检查单元格是否为空,然后如果 E 单元格为空则删除从 B 到 H 的行。

enter image description here

我尝试了下面的编码,但没有工作:(错误显示在“下一个”行停止) 注意:我不想使用 EntireRow.Delete,因为我需要将按钮和其他信息放在工作表的旁边。我不知道......也许有一种方法 EntireRow.Delete 不会删除旁边的按钮。

尝试 1 : 检查 E7 到 E9999,然后删除任何空的单元格。

尝试2: 勾选E7至E9999,然后根据当前勾选单元格删除E至H

'Attempt 1 :
Dim cell As Range
Range("E7:E9999").Select
For Each cell In Selection
    If IsEmpty(cell) Then cell.Delete Shift:=x1Up
Next

'Attempt 2 :
Dim cell As Range
Range("E7:E999").Select
If IsEmpty(cell) Then
        Range(Cells(1, -4), Cells(1, 4)).Delete Shift:=x1Up
    Else
    End If
Next
loops range row delete-row is-empty
© www.soinside.com 2019 - 2024. All rights reserved.