Page 1 of 1

VBA Copy ข้อมูลที่ Filter ไว้

Posted: Wed Nov 01, 2023 9:11 am
by Jirawat namrach
สอบถามหน่อยครับ ต้องการ Copy ข้อมูลเฉพาะที่ Filter ไว้ใน file data โดย filter ตาม file book1>B1 โดยที่มีเงือนไขหลังจาก Filter คือ
1. Copy ข้อมูลโดยที่ช่อง AF ใน file data <> cancelled
2. Copy เฉพาะข้อมูลในคอลัมน์ H,I และ V ใน file data ไปวางที่ A,B,C ใน file book1
เนื่องจากข้อมูลใน file data จริงมีจำนวนมากกว่า 10000 แถว เลยคิดว่าถ้าหาก filter แล้วจะสามารถ copy ได้เร็วกว่า
ได้ลองหาข้อมูล และทดสอบใช้ Code แล้วยังไม่ได้ตามต้องการ เลยไม่มี Code ช่วงที่จะ Copy ครับ

Re: VBA Copy ข้อมูลที่ Filter ไว้

Posted: Wed Nov 01, 2023 7:22 pm
by snasui
:D ตัวอย่างการปรับ Code ครับ

Code: Select all

'Other code
Set bbook = Workbooks.Open("C:\Users\Lenovo\Desktop\data.xlsx", UpdateLinks:=False, ReadOnly:=True)
     With bbook.Worksheets("TSS list")
        If .FilterMode Then
            .ShowAllData
        End If
        .Range("$A$3:$AM$2602").AutoFilter Field:=32, Criteria1:="<>Cancelled"
        .Range("$A$3:$AM$2602").AutoFilter Field:=2, Criteria1:=abook.Sheets("M-Bom").Range("b1")
        If .FilterMode Then
            .Range("h4:h2602, i4:i2602, v4:v2602").SpecialCells(xlCellTypeVisible).Copy
            abook.Sheets("M-Bom").Range("a4").PasteSpecial xlPasteValues
            Application.CutCopyMode = False
        End If
      End With
End If
'Other code

Re: VBA Copy ข้อมูลที่ Filter ไว้

Posted: Thu Nov 02, 2023 8:15 am
by Jirawat namrach
ขอบคุณครับอาจารย์