Lại vấn đề CODE copy dữ liệu từ nhiều sheet vào 1 sheet Tổng hợp (1 người xem)

Liên hệ QC

Người dùng đang xem chủ đề này

n78nokia81

Thành viên mới
Tham gia
15/3/10
Bài viết
34
Được thích
1
Gửi các thầy các bạn trên GPE!

Do yêu cầu công việc phải copy dữ liệu từ rất nhiều sheet cho trước vào 1 sheet tổng hợp mà lại không rành về VBA. Do vậy mình gửi file lên mong muốn mọi ng giúp đỡ viết code copy dữ liệu từ các sheet trong file vào sheet tonghop

Trong từng sheet chi tiết có chuyến bay và ngày bay chỉ nhập số liệu vào dòng đầu tiên. Nếu khi copy vào sheet tổng hợp mà tại các dòng dưới đều có thì rất tốt. Có thể tạo 1 command button hoặc 1 opject để thao tác copy
Mong được mọi ng giúp đỡ
 

File đính kèm

Gửi các thầy các bạn trên GPE!

Do yêu cầu công việc phải copy dữ liệu từ rất nhiều sheet cho trước vào 1 sheet tổng hợp mà lại không rành về VBA. Do vậy mình gửi file lên mong muốn mọi ng giúp đỡ viết code copy dữ liệu từ các sheet trong file vào sheet tonghop

Trong từng sheet chi tiết có chuyến bay và ngày bay chỉ nhập số liệu vào dòng đầu tiên. Nếu khi copy vào sheet tổng hợp mà tại các dòng dưới đều có thì rất tốt. Có thể tạo 1 command button hoặc 1 opject để thao tác copy
Mong được mọi ng giúp đỡ

ngồi buồn ngứa tay làm cho bạn coi có trật lấc không nha...nếu có gì La lên mình coi lại nếu được ta mần tiếp nha..
 

File đính kèm

Upvote 0
Vẫn chưa được ra kết quả như ý muốn. Mình muốn copy dữ liệu từ tất cả các sheet trong file vào 1 sheet tổng hợp
 
Upvote 0
Vẫn chưa được ra kết quả như ý muốn. Mình muốn copy dữ liệu từ tất cả các sheet trong file vào 1 sheet tổng hợp
 
Upvote 0
Vẫn chưa được ra kết quả như ý muốn. Mình muốn copy dữ liệu từ tất cả các sheet trong file vào 1 sheet tổng hợp
Thử với Sub này coi sao.
PHP:
Public Sub TongHop()
Dim Ws As Worksheet, I As Long, J As Long, R As Long, sArr(), dArr(1 To 10000, 1 To 8), K As Long, Tem As String, Ngay As Long
For Each Ws In ThisWorkbook.Worksheets
    If Ws.Name <> "TongHop" Then
        With Ws
            R = .[D47].End(xlUp).Row
            If R > 10 Then
                sArr = .Range("B10:H" & R).Value
                Tem = sArr(2, 1): Ngay = sArr(2, 2)
                For I = 2 To UBound(sArr, 1)
                    K = K + 1
                    dArr(K, 1) = K
                    dArr(K, 2) = Tem
                    dArr(K, 3) = Ngay
                    For J = 3 To 7
                        dArr(K, J + 1) = sArr(I, J)
                    Next J
                Next I
            End If
        End With
    End If
Next Ws
With Sheets("Tonghop")
    .[A11:H10000].ClearContents
    .[A11:H11].Resize(K) = dArr
End With
End Sub
 
Upvote 0
Thử với Sub này coi sao.
PHP:
Public Sub TongHop()
Dim Ws As Worksheet, I As Long, J As Long, R As Long, sArr(), dArr(1 To 10000, 1 To 8), K As Long, Tem As String, Ngay As Long
For Each Ws In ThisWorkbook.Worksheets
    If Ws.Name <> "TongHop" Then
        With Ws
            R = .[D47].End(xlUp).Row
            If R > 10 Then
                sArr = .Range("B10:H" & R).Value
                Tem = sArr(2, 1): Ngay = sArr(2, 2)
                For I = 2 To UBound(sArr, 1)
                    K = K + 1
                    dArr(K, 1) = K
                    dArr(K, 2) = Tem
                    dArr(K, 3) = Ngay
                    For J = 3 To 7
                        dArr(K, J + 1) = sArr(I, J)
                    Next J
                Next I
            End If
        End With
    End If
Next Ws
With Sheets("Tonghop")
    .[A11:H10000].ClearContents
    .[A11:H11].Resize(K) = dArr
End With
End Sub

Code của bạn mình dùng được rồi nhưng trong từng sheet bảng kê của mình số dòng không cố định là 47 như code mà nó có thể được chèn thêm. Bạn sửa lại code cho mình để nó kiểm tra dòng cuối cùng là dòng trên của chữ TOTAL không?
Thanks
 
Upvote 0
Code của bạn mình dùng được rồi nhưng trong từng sheet bảng kê của mình số dòng không cố định là 47 như code mà nó có thể được chèn thêm. Bạn sửa lại code cho mình để nó kiểm tra dòng cuối cùng là dòng trên của chữ TOTAL không?
Thanks
Híc! Hông biết chạy trúng hông à nghe.
PHP:
Public Sub TongHop()
Dim Ws As Worksheet, I As Long, J As Long, R As Long, sArr(), dArr(1 To 10000, 1 To 8), K As Long, Tem As String, Ngay As Long
For Each Ws In ThisWorkbook.Worksheets
    On Error Resume Next
    If Ws.Name <> "TongHop" Then
        With Ws
            R = .Range("A1:A1000").Find("TOTAL").Row - 2
            sArr = .Range("B10:H" & R).Value
            Tem = sArr(2, 1): Ngay = sArr(2, 2)
            For I = 2 To UBound(sArr, 1)
                If sArr(I, 3) <> Empty Then
                    K = K + 1
                    dArr(K, 1) = K
                    dArr(K, 2) = Tem
                    dArr(K, 3) = Ngay
                    For J = 3 To 7
                        dArr(K, J + 1) = sArr(I, J)
                    Next J
                End If
            Next I
        End With
    End If
Next Ws
With Sheets("Tonghop")
    .[A11:H10000].ClearContents
    .[A11:H11].Resize(K) = dArr
End With
End Sub
 
Upvote 0
Các bác cho em hỏi chút, em không biết lập trình gì hết, nhưng cũng đang cần cái giống bạn nokia,
tuy nhien co 1 s thay đổi là copy tư don`g thu 25, minh pha?i chinh code nay nhu the^' nao` a.
Sub Copy_TongHop()
Dim sh As Worksheet
With Sheets("Tonghop")
.[A1:H10000].Clear
For Each sh In Worksheets
Select Case sh.Name
Case "Tonghop"
Case Else
sh.Range(sh.[A300], sh.[H300].End(3)).Resize(, 300).Copy
Sheets("Tonghop").[A65536].End(3)(2).PasteSpecial 3
End Select
Next
End With
End Sub


sub trên có thể kết hợp với sub khác trong cùng 1 module đươc không?
 
Lần chỉnh sửa cuối:
Upvote 0
cái file của mình sau khi copy code trên vào thì thành ra nhu vậy, giờ mình muốn chỉnh lại code copy chỉ copy dòng vật tư thôi, còn các dòng trên là biểu mẫu của cty, chẳng cần copy làm gì. sau đó tổng hợp lại theo từng mục lớn và có sum nếu vtu trùng mã.
mình không biết gì về code, trước đây chỉ dùng hàm cơ bản để tổng hợp nên file thường nặng khoảng 20MB, các cao thủ giúp dùm với
 
Lần chỉnh sửa cuối:
Upvote 0
Bạn Ba Tê ơi.ý của mình cung giống với bạn n78nokia81 bạn có thể giúp minh viết code không?file đính kèm của mình bạn moi trả loi hôm qua đó
 
Upvote 0
Web KT

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

Back
Top Bottom