Tổng hợp nhiều files vào 1 sheet, sau đó phân tách dữ liệu theo form sẵn có

Liên hệ QC

bigbabol89

Thành viên thường trực
Tham gia
15/10/12
Bài viết
224
Được thích
34
Em chào các anh chị,
Em có 1 vấn đề như sau cần mong các anh chị giúp em ạ.
1. Tổng hợp & Phân tách
- Em cần tổng hợp các files vào sheet ALL ( tại file FULL ).
- Sau đó sẽ phân tách dữ liệu vừa tổng hợp đó thành 2 sheet mẫu
2. Chuyển đổi dữ liệu từ hàng dọc sang hàng ngang
- Tại sheet IT2003 khi thay đổi giá trị ở cột E, ấn click thì nó cũng update tại sheet ALL ạ.
Em có ghi note ở trong file đính kèm ( file FULL )
Em cám ơn.
 

File đính kèm

  • FULL.xlsm
    293.5 KB · Đọc: 14
  • Test 2.xlsx
    160.3 KB · Đọc: 7
  • Test 3.xlsx
    126.6 KB · Đọc: 4
  • Test 4.xlsx
    128.4 KB · Đọc: 5
Em chào các anh chị,
Em có 1 vấn đề như sau cần mong các anh chị giúp em ạ.
1. Tổng hợp & Phân tách
- Em cần tổng hợp các files vào sheet ALL ( tại file FULL ).
- Sau đó sẽ phân tách dữ liệu vừa tổng hợp đó thành 2 sheet mẫu
2. Chuyển đổi dữ liệu từ hàng dọc sang hàng ngang
- Tại sheet IT2003 khi thay đổi giá trị ở cột E, ấn click thì nó cũng update tại sheet ALL ạ.
Em có ghi note ở trong file đính kèm ( file FULL )
Em cám ơn.
1/ Tất cả các files phải nằm cùng 1 Folder, khai báo các files con vào file FULL, cột A sheet ALL
2/ Không làm được vì cột ID, Object trong file ALL trùng nhau LuXuBu làm sao biết cập nhật lại dòng nào.
 

File đính kèm

  • FULL.rar
    96.1 KB · Đọc: 9
1/ Tất cả các files phải nằm cùng 1 Folder, khai báo các files con vào file FULL, cột A sheet ALL
2/ Không làm được vì cột ID, Object trong file ALL trùng nhau LuXuBu làm sao biết cập nhật lại dòng nào.
Cám ơn anh,
Có 1 số cái anh giúp em chỉnh lại với :
1/ Tổng hợp & Phân tách
- File ALL tổng hợp các file nhỏ theo điều kiện ngày của file ALL ( từ ngày đến ngày, cột E và F ) => nếu các file nhỏ không theo ngày thì cảnh báo và ngưng sub được không ạ.
- Ô C2, E2, G2 ở sheet Target + Actual sẽ theo sheet ALL.
- Ngày ở sheet Target + Actual ( hàng 3 ) cũng sẽ chạy theo giai đoạn của file ALL ( từ ngày đến ngày ) và hiển thị ngày thôi ạ ( dd ).
- Phần Object ở sheet Target + Actual sẽ lấy số thôi ạ, lấy số ngoài cùng bên trái phần Object.
2/ Phần chuyển đổi dọc sang ngang.
- Em xin lỗi vì file ví dụ của em có ID trùng nhau, em đã chỉnh lại không trùng nữa...anh làm giúp em với ạ.
Mong anh giúp em ạ
 

File đính kèm

  • FULL (2).xlsm
    211.3 KB · Đọc: 2
  • Test 3.xlsx
    126.6 KB · Đọc: 8
  • Test 2.xlsx
    122.8 KB · Đọc: 8
  • Test 4.xlsx
    127.3 KB · Đọc: 7
Cám ơn anh,
Có 1 số cái anh giúp em chỉnh lại với :
1/ Tổng hợp & Phân tách
- File ALL tổng hợp các file nhỏ theo điều kiện ngày của file ALL ( từ ngày đến ngày, cột E và F ) => nếu các file nhỏ không theo ngày thì cảnh báo và ngưng sub được không ạ.
- Ô C2, E2, G2 ở sheet Target + Actual sẽ theo sheet ALL.
- Ngày ở sheet Target + Actual ( hàng 3 ) cũng sẽ chạy theo giai đoạn của file ALL ( từ ngày đến ngày ) và hiển thị ngày thôi ạ ( dd ).
- Phần Object ở sheet Target + Actual sẽ lấy số thôi ạ, lấy số ngoài cùng bên trái phần Object.
2/ Phần chuyển đổi dọc sang ngang.
- Em xin lỗi vì file ví dụ của em có ID trùng nhau, em đã chỉnh lại không trùng nữa...anh làm giúp em với ạ.
Mong anh giúp em ạ
Bạn xem file. Cố gắng giải thích cho người khác hiểu và đưa dữ liệu giống thật.
 

File đính kèm

  • FULL_2.rar
    59.8 KB · Đọc: 7
Dạ " sâu sắc" thật đó anh.
Anh xem giúp em trong file nhé.
Em cám ơn.
- "Ý tưởng này em cũng mới nảy ra..." Chắc là sẽ không "nảy" nữa, hết rồi!
- Có code "chành bành" ra đủ 6 cột từ E đến J, cột nào làm bạn "chướng mắt" thì Hide nó đi cho nhẹ nhàng. Nếu muốn VBA hide nó luôn giùm bạn thì vầy: muốn hiện cột nào thì đánh dấu "x" vào cột N, bấm nút "GPE". Ngoài kiểu này ra thì tôi "làm biếng" rồi.
1/ Phần chuyển từ ngang sang dọc ( ALL - IT2003 ) : anh có thể giúp em cho ra nhiều trường thông tin theo cột cùng lúc như trên ko ạ ( có thể chọn trường hiện ra, nếu có giá trị tại từ ô N1 - N5 )
 

File đính kèm

  • FULL_5.rar
    56.9 KB · Đọc: 26
Dạ hihi, vậy anh cho em hỏi em em chỉ lấy 3 cột ( E, F , G ) mà em chỉnh hoài mà không được.
Anh chỉ em sửa cho 2 sub đc ko ạ.
Em cám ơn
 
Hí hí, em mò ra được rồi. Một lần nữa cám ơn anh Ba Tê đã giúp đỡ em.
 
- "Ý tưởng này em cũng mới nảy ra..." Chắc là sẽ không "nảy" nữa, hết rồi!
- Có code "chành bành" ra đủ 6 cột từ E đến J, cột nào làm bạn "chướng mắt" thì Hide nó đi cho nhẹ nhàng. Nếu muốn VBA hide nó luôn giùm bạn thì vầy: muốn hiện cột nào thì đánh dấu "x" vào cột N, bấm nút "GPE". Ngoài kiểu này ra thì tôi "làm biếng" rồi.
1/ Phần chuyển từ ngang sang dọc ( ALL - IT2003 ) : anh có thể giúp em cho ra nhiều trường thông tin theo cột cùng lúc như trên ko ạ ( có thể chọn trường hiện ra, nếu có giá trị tại từ ô N1 - N5 )
Cái này em tưởng mò được mà không thành công, em ấn click mà 2 hàng cuối nó đè trắng hết. Em chỉ muốn up dữ liệu ngược lại 3 cột đầu ( E, F, G ). Anh giúp em với.
Mã:
Public Sub Update_All()
Dim Dic As Object, sArr(), dArr(), tArr(), I As Long, J As Long, N As Long, ID As String
Dim eDate As Long, fDate As Long, CoL As Long, Rws As Long, R As Long, R2 As Long, C As Long
Set Dic = CreateObject("Scripting.Dictionary")
sArr = Sheets("IT2003").Range("A2", Sheets("IT2003").Range("A2").End(xlDown)).Resize(, 7).Value
With Sheets("ALL")
    fDate = .Range("E2").Value
    eDate = .Range("F2").Value
    For J = fDate To eDate
        C = C + 1
        Dic.Item(J) = C
    Next J
    tArr = .Range("B6", .Range("B6").End(xlDown)).Value
    R2 = UBound(tArr)
    ReDim dArr(1 To R2, 1 To C)
    For I = 1 To R2 Step 6
        ID = tArr(I, 1)
        Dic.Item(ID) = I
    Next I
    R = UBound(sArr)
    For I = 1 To R
        ID = sArr(I, 1)
        Rws = Dic.Item(ID)
        CoL = Dic.Item(sArr(I, 2))
        For J = 0 To 2
            dArr(Rws + J, CoL) = sArr(I, J + 5)
        Next J
    Next I
    .Range("G6").Resize(R2, C) = dArr
    MsgBox "UPDATE xong.", , "Cam on GPE!"
End With
End Sub
 
Cái này em tưởng mò được mà không thành công, em ấn click mà 2 hàng cuối nó đè trắng hết. Em chỉ muốn up dữ liệu ngược lại 3 cột đầu ( E, F, G ). Anh giúp em với.
Cứ đánh mấy dấu "x" vào cột N tùy bạn.
Đến bài #10 đã hoàn thành theo tất cả những ý tưởng "mới nảy ra" của bạn rồi.
Thay đổi xoành xoạch chắc không ai theo mãi được.
 
Web KT
Back
Top Bottom