Vba 如果第一列中的值为2或3,则将对应的B:D复制到同一行并粘贴到封面上
我有一个可以更新的工作表。用户输入一个要实时更新的页码,然后宏将查看第9(I)列,复制该行的Vba 如果第一列中的值为2或3,则将对应的B:D复制到同一行并粘贴到封面上,vba,excel,Vba,Excel,我有一个可以更新的工作表。用户输入一个要实时更新的页码,然后宏将查看第9(I)列,复制该行的B:D,并将其粘贴到前页(封面)的单元格中。这将一直持续到数据表中的所有数据都已完成为止 Sub Update_Current() Dim Page Dim lastrow As Long, i As Long Dim ws As Worksheet lastrow = ActiveSheet.Range("D1000").End(xlUp).Row + 1 P
B:D
,并将其粘贴到前页(封面)的单元格中。这将一直持续到数据表中的所有数据都已完成为止
Sub Update_Current()
Dim Page
Dim lastrow As Long, i As Long
Dim ws As Worksheet
lastrow = ActiveSheet.Range("D1000").End(xlUp).Row + 1
Page = InputBox("Which week would you like to update?")
If Page = 1 Then
Worksheets("Week(1)").Select
For i = 6 To 100
If ws.Cells(i, 9) = "2" Or ws.Cells(i, 9) = "3" Then
Range("i,2:1,4").Copy
{TORN ON WHAT GOES HERE}
End If
Next i
End If
End Sub
我知道已经很晚了,但当我认为我有答案时,我不能不回答问题。希望这能帮助其他人
Sub Update_Current()
Dim Page
Dim lastrow As Long, i As Long
Dim ws As Worksheet
Page = InputBox("Which week would you like to update?")
If Page = 1 Then
Set ws = Worksheets("Week(1)")
ws.Select
For i = 2 To 100
If ws.Cells(i, 9) = "2" Or ws.Cells(i, 9) = "3" Then
ws.Range("B" & i & ":D" & i).Copy
ThisWorkbook.Sheets("CoverPage").Select
lastrow = ThisWorkbook.Sheets("CoverPage").Range("D1000").End(xlUp).Row + 1
ThisWorkbook.Sheets("CoverPage").Range("B" & lastrow).PasteSpecial xlPasteValues
End If
Next i
End If
End Sub
1
PAGE是什么意思<代码>2你的问题标题是A:C,但问题是B:D哪一个?{这里发生了什么}那里是什么?“你能粘贴它们吗?”桑托什:我猜他是在问应该去那里做什么:)是的,我没有任何具体的东西,这是公平的游戏。我道歉,是B:D。我把那个搞糟了pAnd一页,我指的是第一张工作表。我想看一张特定的表格,所有的表格都是相同的模板,只是每周都有不同的数据。然后根据数据,将某些数据拉入第一个工作表,以显示正在进行的工作和已完成的工作(2和3)。