首页 > 解决方案 > 如何找到下一个空行

问题描述

我正在编写一个宏,它找到下一个空行,然后将一组数据附加到其中,应该始终将第 1 行作为我的标题行,但我的代码似乎只是覆盖了第 1 行中的标题。我已经进行了一些基本的调试,我尝试更改变量的代码,row但我要么得到错误,要么什么都没有,这是第一个粘贴我的日期的人,除了它将我的数据粘贴到第 1 行。

Sub MEData()
    ' Find Next Empty Row & Append ME Data
    Dim headers() As Variant
    Dim ws As Worksheet
    Dim wb As Workbook
    Dim row As Integer
    row = Cells.SpecialCells(xlCellTypeLastCell).Offset(1, 0).row
    Application.ScreenUpdating = False
    Set wb = ActiveWorkbook
    Set ws = ThisWorkbook.Sheets("ME Data")
    If DesignChangeECN = "" Then
        DesignChangeECN = "Not Design Change"
    End If
    
    headers() = Array(VBA.Environ("UserName"), Now(), MPP_ECN, MPP_ECN_Description, _
    DesignChangeECN, Dept, ShortChangeDescription, ChangeType, "Additional Notes", _
    "Open", "Submitted")
    
    Rows(row).Insert shift:=xlShift ' Insert Into Next Empty Row
    With ws
    For i = LBound(headers()) To UBound(headers())
        .Cells(1, 1 + i).Value = headers(i)
        Next i
    End With
End Sub

在此处输入图像描述

所以这里上面的宏用我的数据替换了标题,如果我再次运行它,它只会用另一个副本替换数据......

我不太确定如何让它忽略第 1 行并不断地将数据附加到下一行。

标签: excelvba

解决方案


用这个

LastRow=Cells(Rows.Count, 1).End(xlup).Row + 1

推荐阅读