繁体   English   中英

VBA代码将特定的列从工作表1复制到工作表2

[英]vba code to copy specific columns from worksheet1 to worksheet2

嗨,我有以下代码将数据从工作表1复制到工作表2。所有列都被选中,如何修改以仅选择列A,I和M:

Sub NewSheetData() 
    With Application 
        .ScreenUpdating = False 
        .EnableEvents = False 
    End With 

    Dim Rng As Range 

    Set Rng = Range([A1], Range("A" & Rows.Count).End(xlUp)) 

    On Error Resume Next 

    With Rng 
        .AutoFilter , field:=1, Criteria1:="*TC*", Operator:=xlOr 
        .SpecialCells(xlCellTypeVisible).EntireRow.Copy Sheets("Sheet2").Range("A1") 
        .AutoFilter 

    End With 

    On Error Goto 0 

    Application.EnableEvents = True 

您可以像这样进行单独的复制粘贴:

With Rng
    .AutoFilter , field:=1, Criteria1:="*TC*", Operator:=xlOr
    .SpecialCells(xlCellTypeVisible).Range("A1").Copy Sheets("Sheet2").Range("A1")
    .SpecialCells(xlCellTypeVisible).Range("I1").Copy Sheets("Sheet2").Range("B1")
    .SpecialCells(xlCellTypeVisible).Range("M1").Copy Sheets("Sheet2").Range("C1")
    .AutoFilter
End With

编辑:您也可以尝试:

Sheets("Sheet1").Range("A1").SpecialCells(xlCellTypeVisible).Copy Sheets("Sheet2").Range("A1")
Sheets("Sheet1").Range("I1").SpecialCells(xlCellTypeVisible).Copy Sheets("Sheet2").Range("A1")
Sheets("Sheet1").Range("M1").SpecialCells(xlCellTypeVisible).Copy Sheets("Sheet2").Range("A1")

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM