Hi Team,
I want to autofilter data and copy 3 Non Contigious columns and paste into output sheet.
my below code works, but Can we shorten code here?...by copying all 3 columns one go ..
Something like
.Columns(1).Resize(.Rows.Count - 1).Offset(1).Copy
.Columns(3).Resize(.Rows.Count - 1).Offset(1).Copy
.Columns(10).Resize(.Rows.Count - 1).Offset(1).Copy
Thanks
mg
I want to autofilter data and copy 3 Non Contigious columns and paste into output sheet.
my below code works, but Can we shorten code here?...by copying all 3 columns one go ..
Something like
Rich (BB code):
.Columns(1,3,10).Resize(.Rows.Count - 1).Offset(1).Copy
.Columns(1).Resize(.Rows.Count - 1).Offset(1).Copy
.Columns(3).Resize(.Rows.Count - 1).Offset(1).Copy
.Columns(10).Resize(.Rows.Count - 1).Offset(1).Copy
VBA Code:
Sub Autofilter_3_Columns
Dim sht As Worksheet
Dim wbk As Workbook
Set wbk = Workbooks.Add
Set sht = wbk.ActiveSheet
With rng_Data
.AutoFilter field:=10, Criteria1:="Account Not Opened"
If .Columns(10).SpecialCells(12).Count > 1 Then
.Columns(1).Resize(.Rows.Count - 1).Offset(1).Copy
sht.Range("a2").PasteSpecial xlPasteAll
.Columns(3).Resize(.Rows.Count - 1).Offset(1).Copy
sht.Range("B2").PasteSpecial xlPasteAll
.Columns(10).Resize(.Rows.Count - 1).Offset(1).Copy
sht.Range("C2").PasteSpecial xlPasteAll
.Cells.AutoFilter
Else
.Cells.AutoFilter
End If
End With
Application.CutCopyMode False
end sub
Thanks
mg
Last edited: