VBA 动态筛选指定内容并复制到其他表格
以下是一个示例代码,可以根据你的需求进行修改:
Sub FilterAndCopy()
Dim wsSource As Worksheet
Dim wsDestination As Worksheet
Dim filterValue As String
Dim lastRow As Long
Dim i As Long
Dim j As Long
'设置源表格和目标表格
Set wsSource = ThisWorkbook.Sheets('Sheet1')
Set wsDestination = ThisWorkbook.Sheets('Sheet2')
'要筛选的内容
filterValue = 'A'
'获取源表格的最后一行
lastRow = wsSource.Cells(wsSource.Rows.Count, 'A').End(xlUp).Row
'循环遍历源表格
For i = 1 To lastRow
'如果符合筛选条件
If wsSource.Cells(i, 'A').Value = filterValue Then
'复制该行数据到目标表格
wsSource.Rows(i).Copy wsDestination.Rows(j)
j = j + 1
End If
Next i
End Sub
在这个示例代码中,我们定义了两个工作表:Sheet1 和 Sheet2。我们将在 Sheet1 中动态筛选指定内容,并将筛选结果复制到 Sheet2 中。
要修改代码以适应你的需求,请更改以下代码行:
Set wsSource = ThisWorkbook.Sheets('Sheet1') '将 'Sheet1' 更改为源工作表的名称
Set wsDestination = ThisWorkbook.Sheets('Sheet2') '将 'Sheet2' 更改为目标工作表的名称
filterValue = 'A' '将 'A' 更改为你要筛选的内容
If wsSource.Cells(i, 'A').Value = filterValue Then '将 'A' 更改为你要筛选的内容所在的列
你可以根据需要修改其他代码行,例如更改复制的列或更改筛选条件。
原文地址: https://www.cveoy.top/t/topic/lKeC 著作权归作者所有。请勿转载和采集!