根据单元格输入在多个工作表上运行相同的宏

时间:2018-02-21 14:39:06

标签: excel vba excel-vba

我正在尝试运行一个宏,它基本上只是将数据从一个工作表复制并粘贴到另一个工作表。我可以为多张纸提供一个宏按钮。在单元格A3中,用户可以更改他们想要查看的工作表的名称。因此,如果单元格A3的工作表名称为“Payroll”,则会将某些行复制并粘贴到新工作表“New”上,如果单元格A3的工作表名称为“Liability”,则会将某些行复制并粘贴到新工作表“New”上等等。每次在粘贴新内容之前清除工作表“新”上的旧内容。

这是我尝试的但是我的第一行出错了

Sub NewSecurity()
ValueA3 = ThisWorkbook.Worksheets("New").Range("A3").Value
Range("B5:F5").Select
Range(Selection, Selection.End(xlDown)).Select
Range("B5:F9999").Select
Selection.ClearContents
 With Selection.Interior
    .Pattern = xlNone
    .TintAndShade = 0
    .PatternTintAndShade = 0
End With
Selection.Borders(xlDiagonalDown).LineStyle = xlNone
Selection.Borders(xlDiagonalUp).LineStyle = xlNone
Selection.Borders(xlEdgeLeft).LineStyle = xlNone
Selection.Borders(xlEdgeTop).LineStyle = xlNone
Selection.Borders(xlEdgeBottom).LineStyle = xlNone
Selection.Borders(xlEdgeRight).LineStyle = xlNone
Selection.Borders(xlInsideVertical).LineStyle = xlNone
Selection.Borders(xlInsideHorizontal).LineStyle = xlNone
Range("B15").Select
Sheets(ValueA3).Select
ActiveSheet.Range("$J$2:$J$9999").AutoFilter Field:=1, Criteria1:="New"
Range("A2:E10000").Select
Selection.Copy
Sheets("New").Select
ActiveSheet.Paste
Sheets(ValueA3).Select
Application.CutCopyMode = False
ActiveSheet.Range("$J$2:$J$9999").AutoFilter Field:=1
Sheets("New").Select
Range("A2").Select

End Sub

0 个答案:

没有答案