我有一个项目,我希望你们中的一些人能帮我解决我要出错的地方。这里的独家新闻:将表格行复制到具有多个条件的新表中 - 仅复制第一行?
我有一个Excel工作表,其中包含大量的数据表。我需要根据多个条件复制数据行并将其粘贴到另一个工作表中的另一个表中。第二个表应该扩展以适应无数行信息。像这样的东西(在Excel假设这些表):
| A | B | C | D |
|1 |Name^ |Fruit^ |Amount^ |Strata^ |
|2 |Mary |Apples |300 |Sand |
|3 |Dean |Oranges |200 |Gravel |
|4 |Mary |Bananas |300 |Sand |
|5 |Sam |Oranges |200 |Loam |
|6 |Mary |Oranges |200 |Sand |
|7 |Dean |Apples |500 |Loam |
如果行包含玛丽在第一列和第三列300,该行应该被复制到新表中不同的工作表这将那么看起来像:
| A | B | C | D |
|1 |Name^ |Fruit^ |Amount^ |Strata^ |
|2 |Mary |Apples |300 |Sand |
|3 |Mary |Bananas |300 |Sand |
我遇到的问题是,我可以得到行复制,但他们这样做下面的第二个表,或者我能办到的数据粘贴到第一行新的桌子。代码迄今是:
Public Sub CopyRows()
' Select starting sheet with data table
Sheets("Full data").Select
' loop through all rows
FinalRow = Cells(Rows.Count, 1).End(xlUp).Row
For x = 2 To FinalRow
ThisValue = Cells(x, 8).Value
' Set filtering criteria and copy matching cells
If Cells(x, 8) = "PHONE" And Cells(x, 14) = "v" Then
Cells(x, 1).Resize(1, 33).Copy
' Select sheet where second table is located
Sheets("By Phone, Verified").Select
' Select the second table
Range("Table2[Company]").Select
ListObject = Cells(Rows.Count, 3).End(xlUp).Row + 1
' paste the rows of data
ActiveSheet.Paste
End If
Next x
End Sub
第二个表只有一个头和一个行开始,并且这两个表在其片材的第3行开始。
任何想法如何可以将复制的数据到第二个表中?让我知道是否需要更多的澄清。
更新了示例代码 – CJC