Xin Anh/Chị giúp đỡ VBA copy nhiều sheet thành 1 sheet

Liên hệ QC

Long234

Thành viên mới
Tham gia
11/11/22
Bài viết
4
Được thích
1
Ạnh/Chị giúp đỡ em code VBA để copy nhiều sheet thành 1 sheet như ví dụ dưới đây với ạ.
Em có file có 3 danh sách lớp "1/1, 2/1, 3/1", em muốn gộp 3 sheet lại với nhau thành 1 bảng chung như ở sheet Tổng, nhưng chỉ copy sheet danh sách lớp, không copy 4 sheet cố định ở đằng trước là "AAAA,...,DDDD". Em cảm ơn mọi người nhiều ạ
 

File đính kèm

  • GỘP NHIỀU SHEET THÀNH 1 SHEET.xlsx
    56.9 KB · Đọc: 19
Ạnh/Chị giúp đỡ em code VBA để copy nhiều sheet thành 1 sheet như ví dụ dưới đây với ạ.
Thử code này coi sao
Mã:
Sub ACB()
    Dim ws As Worksheet, iR&, sR&
    With Sheet8
        .Range("A9:Q10000").ClearContents
        For Each ws In Worksheets
            iR = .Range("B" & Rows.Count).End(3).Row + 1
            If iR > 9 Then iR = iR Else iR = 9
            If UCase(ws.Name) Like "L*" Then
                sR = ws.Range("B" & Rows.Count).End(3).Row
                ws.Range("A9:Q" & sR).Copy .Range("A" & iR)
            End If
        Next
    End With
End Sub
 
Upvote 0
Thử code này coi sao
Mã:
Sub ACB()
    Dim ws As Worksheet, iR&, sR&
    With Sheet8
        .Range("A9:Q10000").ClearContents
        For Each ws In Worksheets
            iR = .Range("B" & Rows.Count).End(3).Row + 1
            If iR > 9 Then iR = iR Else iR = 9
            If UCase(ws.Name) Like "L*" Then
                sR = ws.Range("B" & Rows.Count).End(3).Row
                ws.Range("A9:Q" & sR).Copy .Range("A" & iR)
            End If
        Next
    End With
End Sub
Được rồi anh ạ, em cảm ơn anh rất nhiều ạ
 
Upvote 0
Thử code này coi sao
Mã:
Sub ACB()
    Dim ws As Worksheet, iR&, sR&
    With Sheet8
        .Range("A9:Q10000").ClearContents
        For Each ws In Worksheets
            iR = .Range("B" & Rows.Count).End(3).Row + 1
            If iR > 9 Then iR = iR Else iR = 9
            If UCase(ws.Name) Like "L*" Then
                sR = ws.Range("B" & Rows.Count).End(3).Row
                ws.Range("A9:Q" & sR).Copy .Range("A" & iR)
            End If
        Next
    End With
End Sub
Anh ơi, em chưa rành VBA lắm nên cho em hỏi thêm chút được không ạ, dòng "If iR > 9 Then iR = iR Else iR = 9" có ý nghĩa gì vậy ạ, em cảm ơn anh nhiều
 
Upvote 0
Anh ơi, em chưa rành VBA nên cho em hỏi thêm chút được không ạ, dòng "If iR > 9 Then iR = iR Else iR = 9" có ý nghĩa gì vậy ạ, em cảm ơn anh nhiều
Sheet Tổng của bạn có hòa ô tiêu đề. kết quả trả về từ dòng 9. Để tránh nó trả về dòng 8 nên mình thêm đoạn đó ấy mà
 
Upvote 0
Web KT

Bài viết mới nhất

Back
Top Bottom