调整单元格删除宏以覆盖多个列

时间:2014-06-20 00:24:58

标签: excel vba excel-vba

我现在有一个工作簿,它执行以下过程:

  1. 在[工作表1]中输入数据后,宏会在数据集底部的[工作表2]中创建它的记录。
  2. 根据[工作表2]中的众多公式列,从[工作表2]中获取新数据集,并将其作为值复制到[工作表3]中。
  3. 到目前为止,一切都正常运行。

    在[表3]中,每个列都将单独处理以用于下拉目的。一旦数据到达[Sheet 3],这些列中的每一列都可能有几个空白,这些空白从[Sheet 2]中复制,导致它在实际数据之前对所有这些空白进行排序,使得下拉变得难看。

    我创建了一个宏来删除这些空白,但它只针对第一列执行此操作:

    Sub Delete_Cell()
    Dim lrow As Long
    For lrow = Cells(Cells.Rows.Count, "A").End(xlUp).row To 2 Step -1
    If Cells(lrow, "A") = "" Then Cells(lrow, "A").delete
    Next lrow
    End Sub
    

    我需要对这个宏进行改编,告诉它对列A到J执行此操作。

    感谢任何帮助。

    由于

1 个答案:

答案 0 :(得分:1)

考虑:

Sub Delete_Cell()
    Dim lrow As Long, lcol As Long
    For lcol = 1 To 10
        For lrow = Cells(Rows.Count, lcol).End(xlUp).Row To 2 Step -1
            If Cells(lrow, lcol) = "" Then
                Cells(lrow, lcol).Delete
            End If
        Next lrow
    Next lcol
End Sub