我有一個主表單(「Perk」),並希望將所有列中的「y」複製到「註冊」表單中,並且全部使用「y」在B欄進入「房屋」表。使用當前的代碼,正確的信息將被複制到註冊表中。住房單只是拉動第一筆記錄。將行從一個工作表複製到另一個基於不同列的工作表
Sub extractdata()
Dim x As Long, lastrow
lastrow = Sheets("Perk").Range("A" & Rows.Count).End(xlUp).Row
Sheets("Housing").Range("A2:AW500").ClearContents
Sheets("Registration").Range("A2:AW500").ClearContents
For x = 2 To lastrow
If Worksheets("Perk").Cells(x, 1) Like "y*" Or Worksheets("Perk").Cells(x, 1) Like "Y*" Then
Worksheets("Perk").Cells(x, "A").EntireRow.Copy Destination:=Sheets("Registration").Range("A" & Rows.Count).End(xlUp).Offset(1)
End If
If Worksheets("Perk").Cells(x, 2) Like "y*" Or Worksheets("Perk").Cells(x, 2) Like "Y*" Then
Worksheets("Perk").Cells(x, "B").EntireRow.Copy Destination:=Sheets("Housing").Range("B" & Rows.Count).End(xlUp).Offset(1, -1)
End If
Next x
End Sub
現在你擁有了它,如果列A以y它進入註冊且僅當A列沒有ÿ並且B列有它會去住房。如果你想讓它去住房,不管你是否有A,你都必須把它分成兩個不同的,如果不是ElseIF。 –
謝謝!我做了更新。現在,如果列A和列B中有y,或者如果列B中有多行y,那麼行只會複製到外殼,然後只有最後一行被複制到外殼中。正確註冊副本。 – Faith
你的問題準確地反映了問題中的代碼在做什麼?它似乎是在說問題中的一件事情(「使用當前的代碼,正確的信息是複製到註冊表中,外殼表只是拉入第一條記錄。」),但是您最後的評論(「現在行如果列A和列B中有y,或者如果在列B中有多行y,那麼只有最後一行被複制到房屋中。「)似乎與此相矛盾。 – YowE3K