我的VBA功能有问题。
复制工作正常,但我想将诗歌复制到第一个空单元格,而不是我选择的单元格。 此刻我有这样的事情:
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").Copy
复制到Sheets("Luty")
的第一个空白B行,我该怎么做?
还有一个问题,你是否可以在一个循环中这样做,以便在多达100行时不重复循环?
答案 0 :(得分:1)
这会将数据放入工作表B列B中的下一个空白单元格中;&#34; Luty&#34;
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
关于你的第二个问题,我不确定你想要什么。