Excel / VBA代码自动将行复制到另一个工作表

我一直在努力自己做这个,并且被谷歌拖了下来,但是没有VBA的知识。 我相信这很简单,如果你知道你在做什么:

工作表1是主电子表格列B是查询列

当列B中的单元格等于“X”时,我希望整行被复制到工作表2中,包括任何条件格式。

我希望这会自动发生,并更新或覆盖Sheet 2中的数据(除了第一行中有标题)。

所以基本上,Sheet 2应该总是包含Sheet 1中列B =“X”中所有行的精确副本。

任何帮助将非常感激!

假设你的数据从sheet1的A1开始,这个macros将把它转移到sheet2,覆盖sheet2中除第一行以外的所有内容。

Sub FilterAndCopy() Dim sht1 As Worksheet, sht2 As Worksheet Set sht1 = Sheets("Sheet1") Set sht2 = Sheets("Sheet2") intersect(sht2.UsedRange,sht2.rows("2:" & rows.count)).ClearContents sht1.Cells(1, 1).CurrentRegion.AutoFilter sht1.Cells(1, 1).CurrentRegion.AutoFilter 1, "X" sht1.Cells(1, 1).CurrentRegion.Offset(1).SpecialCells(xlCellTypeVisible).EntireRow.Copy sht2.Cells(2, 1) sht1.Cells(1, 1).CurrentRegion.AutoFilter End Sub