【发布时间】:2021-05-18 12:06:00
【问题描述】:
由于我仍在学习,我陷入了应用条件以根据源工作簿单元格值过滤目标工作表中的两列。
例如。来源:A1 列有 Q2,b2 列有 d104 我需要将其用作目标工作簿中的过滤器并删除现有的可见过滤值并将其替换为复制的数据。
我有逻辑只替换没有过滤器的数据。但是如何使用过滤器来实现呢?
Dim wsCopy As Worksheet
Dim wsDest As Worksheet
Dim CopyLastRow As Integer
Dim DestlastRow As Integer
'1. open the workbook to copy from
Workbooks.Open "C:\Forecast.xlsx" -- target
'2. Define each workbook
Set wsCopy = ThisWorkbook.Sheets("Input Data") --source
Set wsDest = Workbooks("Imports PY Plan Forecast.xlsx").Sheets("Source")
'3. Define last row in source data
CopyLastRow = wsCopy.Cells(wsCopy.Rows.Count, "A").End(xlUp).Row
ThisWorkbook.Worksheets("Input Data").Range("A2:F" & CopyLastRow).Copy wsDest.Range("A2")
'4. close and save source file
Workbooks("Imports PY Plan Forecast.xlsx").Close SaveChanges:=True
End Sub```
【问题讨论】: