Excel 找到第二个空单元格/行并从中开始粘贴

Excel 找到第二个空单元格/行并从中开始粘贴,excel,vba,Excel,Vba,我已经做了很多研究,找不到解决办法。我试图在列中找到第二个空单元格/行(或其他指定的单元格),并从中开始粘贴(总是跳到下一个空单元格/行) 我找到了下面的代码,但它从列中的第一个空行开始粘贴。将“偏移”命令更改为(2,0)也不起作用,因为它会找到第二个空行,但开始粘贴时总是在拼贴之间留下一个空单元格。我只想在开头找到第二个空单元格,然后开始粘贴到下一个第一个空单元格/行。你们能帮帮我吗?提前多谢 例如,我复制范围G4:I4并尝试粘贴到列G中 代码: Sub InsertButton()

我已经做了很多研究,找不到解决办法。我试图在列中找到第二个空单元格/行(或其他指定的单元格),并从中开始粘贴(总是跳到下一个空单元格/行)

我找到了下面的代码,但它从列中的第一个空行开始粘贴。将“偏移”命令更改为(2,0)也不起作用,因为它会找到第二个空行,但开始粘贴时总是在拼贴之间留下一个空单元格。我只想在开头找到第二个空单元格,然后开始粘贴到下一个第一个空单元格/行。你们能帮帮我吗?提前多谢

例如,我复制范围G4:I4并尝试粘贴到列G中

代码:

Sub InsertButton() 
    Range("G4:I4").Copy Range("G" & Rows.Count).End(xlUp).Offset(1, 0) 
End Sub

好吧,你试着写一个函数来做两件不同的事情。如果可以包含调用函数的循环,那将非常有用。您可以使用两个这样的函数来完成每一件事情,或者向函数传递一个参数,告诉它要做什么

Sub InsertButton1()
    Range("G4:I4").Copy Range("G" & Rows.Count).End(xlUp).Offset(1, 0) 
End Sub
Sub InsertButton2()
    Range("G4:I4").Copy Range("G" & Rows.Count).End(xlUp).Offset(2, 0) 
End Sub

然后当你叫它时说

Sub doStuff()
    Dim thisIsTheFirstTime As Boolean
    thisIsTheFirstTime = True
    For Each item In myStuff
        If thisIsTheFirstTime Then
            InsertButton2() 'or InsertButton(2)
            thisIsTheFirstTime = False
        Else
            InsertButton1() 'or InsertButton(1)
        End If
    Next item
End Sub
Sub doStuff()
    Dim thisIsTheFirstTime As Boolean
    thisIsTheFirstTime = True
    For Each item In myStuff
        If thisIsTheFirstTime Then
            InsertButton2() 'or InsertButton(2)
            thisIsTheFirstTime = False
        Else
            InsertButton1() 'or InsertButton(1)
        End If
    Next item
End Sub