将值复制到第一个空行excel VBA

我有我的VBAfunction问题。

复制工作正确,但是我想将诗歌复制到第一个空单元格,而不是我选中的单元格。 在这一刻我有这样的事情:

Sub kopiowanie_styczen_luty() Dim a As Integer Dim i As Integer Dim test As Long If Range("AI6").Value < 30 Then test = Sheets("Styczeń").Range("AI6").Value Sheets("Styczeń").Range("B6").Copy Destination:=Sheets("Luty").Range("B6") Sheets("Luty").Range("AJ6") = test Sheets("Styczeń").Range("B6:AI6").Interior.ColorIndex = 0 End If If Range("AI6").Value >= 30 Then Sheets("Styczeń").Range("B6:AI6").Interior.ColorIndex = 22 End If EndSub 

我想复制Sheets("Styczeń").Range("B6").CopySheets("Luty")上的第一个空白B行Sheets("Luty")我该怎么做?

还有一个问题,你是否可以在一个循环中做到这一点,以便重复循环,如果高达100这样的行?

这将把数据放入“Luty”表的B列的下一个空白单元格中,

 Sub kopiowanie_styczen_luty() Dim a As Integer Dim i As Integer Dim test As Long Dim lastRow as long Dim cellData as variant If Range("AI6").Value < 30 Then test = Sheets("Styczeń").Range("AI6").Value cellData = Sheets("Styczeń").Range("B6").value with worksheets("Luty") lastRow = .Range("B" & .rows.count).end(xlup).row + 1 .range("B" & cstr(lastRow)).value = cellData end with Sheets("Luty").Range("AJ6") = test Sheets("Styczeń").Range("B6:AI6").Interior.ColorIndex = 0 End If If Range("AI6").Value >= 30 Then Sheets("Styczeń").Range("B6:AI6").Interior.ColorIndex = 22 End If End Sub 

关于你的第二个问题,我不确定你想要什么。