我已经搜索了以下问题的解决方案,并试图自己解决它,但不幸的是我对宏的了解有限使我陷入了死胡同!
以下是我当前宏的代码,我正在尝试设置这些代码,以便在工作中更容易重复。
我想在同一工作簿中的单独选项卡上过滤2个单独的报表,将结果复制并粘贴到新选项卡,并使用基于输入框的粘贴值填充搜索条件。如果这是有道理的。
该宏除了它已经将搜索条件保存为宏中的确定数字而不是使用单元格引用的事实之外,我试图将其链接到“B2”,在这种情况下,在一个名为“Report”的选项卡上输入“
基本上 - 从选项卡1“报告输入”复制“B2”中的值,无论数字(不一定是560623),请查看选项卡2“发票备份”并根据选项卡1中的单元格“b2”进行过滤。 。复制并粘贴值到选项卡3 ....然后用另一个报告重复该过程...
任何帮助都将不胜感激。
Sub ReportFilter()
'
' ReportFilter Macro
'
'
Range("B2").Select
Selection.Copy
Sheets("TDR Backup").Select
ActiveSheet.Range("$A$1:$AA$56298").AutoFilter Field:=3, Criteria1:= _
"560623"
Cells.Select
Application.CutCopyMode = False
Selection.Copy
Sheets("TDR").Select
Cells.Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Sheets("Report Input").Select
Range("B2").Select
Application.CutCopyMode = False
Selection.Copy
Sheets("Invoice Backup").Select
Application.CutCopyMode = False
Selection.AutoFilter
ActiveWindow.ScrollColumn = 6
ActiveWindow.ScrollColumn = 5
ActiveWindow.ScrollColumn = 4
ActiveWindow.ScrollColumn = 3
ActiveWindow.ScrollColumn = 1
Sheets("Report Input").Select
Selection.Copy
Sheets("Invoice Backup").Select
ActiveSheet.Range("$A$1:$T$340548").AutoFilter Field:=2, Criteria1:= _
"560623"
ActiveWindow.SmallScroll Down:=-18
Cells.Select
Application.CutCopyMode = False
Selection.Copy
Sheets("Invoice").Select
Cells.Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
ActiveWindow.SmallScroll Down:=-48
Range("E546").Select
Selection.End(xlUp).Select
Range("E67").Select
Selection.End(xlUp).Select
Selection.End(xlUp).Select
Selection.End(xlUp).Select
Range("E2").Select
Sheets("TDR").Select
Range("D39").Select
ActiveWindow.SmallScroll Down:=-66
Sheets("TDR Backup").Select
Rows("1:1").Select
Application.CutCopyMode = False
Selection.AutoFilter
Sheets("Invoice Backup").Select
Rows("1:1").Select
Selection.AutoFilter
Range("G8").Select
ActiveWindow.SmallScroll Down:=-18
End Sub
答案 0 :(得分:0)
您需要将2个自动过滤器行末尾的"560623"
更改为
Sheets("Report Input").range("B2")