Trợ giúp - Tự động tạo group theo cột có số liệu phân cấp

Liên hệ QC

mrhoangsp

Thành viên mới
Tham gia
10/6/09
Bài viết
11
Được thích
2
Chào các bạn trên diễn đàn.
Mình đang tìm cách tạo group trên file excel từ file Project xuất sang có dữ liệu phân cấp nhóm công việc. Mục đích để thêm các hàm theo dõi công việc theo ý mình mà trên Project không có. Nếu mình tạo được group thông qua số cấp thì giao diện sẽ gọn hơn. Nếu công tác ít mình làm thủ công thì còn được chứ 1 file project có vài trăn dòng thì việc phân cấp để quản lý rất lâu.
Nhờ các bạn trợ giúp. Xin cảm ơn !
 

File đính kèm

  • Tien do thi cong.xlsx
    13.3 KB · Đọc: 22
Có liên quan đến bài này không? Được hay không được thì cũng phản hồi lại để những người khác biết, không chơi kiểu xong việc lẳng lặng bỏ đi như thế nhé.
 
Upvote 0
Có liên quan đến bài này không? Được hay không được thì cũng phản hồi lại để những người khác biết, không chơi kiểu xong việc lẳng lặng bỏ đi như thế nhé.
không bạn ơi .. chắc có sự hiểu nhầm trong việc này ... mình đã trả lời cảm ơn và tiếp tục câu hỏi làm người lại cho việc từ cấp group sang tạo group , rút kinh nghiệm từ những bạn khác ... khuyên nên tạo 1 chủ đề mới với nội dung mới để mọi người giúp đỡ dễ hơn.
Mình gửi phản hồi cảm ơn bạn , nhưng sau đó mình không thấy hiện trong bày viết của mình, cứ nghĩ do web chưa cập nhật hay lý do gì khác , mình không nhận báo lỗi cho việc gửi này nên mình không gửi lại.
Cảm ơn bạn đã góp ý nha .. mình không "lẳng lặng" như bạn nghĩ đâu .. !
Sẵn đây mình cũng cảm ơn bạn đã giúp mình giải quyết được cái vướn cho bài trên ...
 
Upvote 0
Bạn đã biết cấu trúc phân cấp hay chưa, trong tệp ví dụ của bạn không phải là một phân cấp.
Bạn nên phân cấp theo mô hình cây:
Ví dụ:
1
1.1
1.1.1
1.1.2
1.2.1
1.2.2
2
2.1
...
Như vậy thì mới có thể tự động tạo Group theo phân cấp ở ví dụ trên.


Nếu bạn sử dụng mô hình cây ở trên, sửa lại tệp ví dụ đăng lên, biết đâu tôi hoặc ai đó có thể giúp bạn.
 
Upvote 0
Bạn đã biết cấu trúc phân cấp hay chưa, trong tệp ví dụ của bạn không phải là một phân cấp.
Bạn nên phân cấp theo mô hình cây:
Ví dụ:
1
1.1
1.1.1
1.1.2
1.2.1
1.2.2
2
2.1
...
Như vậy thì mới có thể tự động tạo Group theo phân cấp ở ví dụ trên.


Nếu bạn sử dụng mô hình cây ở trên, sửa lại tệp ví dụ đăng lên, biết đâu tôi hoặc ai đó có thể giúp bạn.
có bạn ... bạn có thể giúp mình theo hướng này ... mình gửi lại file có mô hình cấp ...
 

File đính kèm

  • Tien do thi cong.xlsx
    19.5 KB · Đọc: 27
Upvote 0
Code cho file bài #1. Lười nên viết vầy cho nhanh, gom lại làm từng cụm thì tốc độ nhanh hơn.
Mã:
Sub a()
Dim Cll As Range, i As Long
For Each Cll In Range("D2:D76")
    For i = 2 To Cll.Value
        Cll.Rows.Group
    Next
Next
End Sub
 
Upvote 0
Code cho file bài #1. Lười nên viết vầy cho nhanh, gom lại làm từng cụm thì tốc độ nhanh hơn.
Mã:
Sub a()
Dim Cll As Range, i As Long
For Each Cll In Range("D2:D76")
    For i = 2 To Cll.Value
        Cll.Rows.Group
    Next
Next
End Sub
Cảm ơn bạn , mình dùng được rồi , chỉ cần đơn giản như vầy thôi. chỉ group 1 lần đầu khi có cột phân cấp.
 
Upvote 0
có bạn ... bạn có thể giúp mình theo hướng này ... mình gửi lại file có mô hình cấp ...

Bạn có thể tham khảo Hàm và thủ tục trong tệp dưới đây
Có Hàm S_Group là hàm tự động được viết trong bản tính Excel
Có thủ tục GroupByLevel là thủ tục thực thi để vận dụng trong VBA

 
Lần chỉnh sửa cuối:
Upvote 0
Bạn có thể tham khảo Hàm và thủ tục trong tệp dưới đây
Có Hàm S_Group là hàm tự động được viết trong bản tính Excel
Có thủ tục GroupByLevel là thủ tục thực thi để vận dụng trong VBA
Cảm ơn bạn .. Bạn tạo sẳn giùm mình file này. Mình có thể đưa vào from chuẩn mình dùng rất là tiện !!!
 
Upvote 0
Bạn có thể tham khảo Hàm và thủ tục trong tệp dưới đây
Có Hàm S_Group là hàm tự động được viết trong bản tính Excel
Có thủ tục GroupByLevel là thủ tục thực thi để vận dụng trong VBA
Nhờ bạn kiểm tra giúp, sao mình làm theo bạn, nhưng ở Sheet NSL thì chạy được, còn ở sheet Tien Do thì không có cho ra kết quả Group.
Cảm ơn bạn.
 

File đính kèm

  • 22.05.23-Tvduc-Tiến độ thi công-canchinh.xlsb
    2.5 MB · Đọc: 9
Upvote 0
Nhờ bạn kiểm tra giúp, sao mình làm theo bạn, nhưng ở Sheet NSL thì chạy được, còn ở sheet Tien Do thì không có cho ra kết quả Group.
Cảm ơn bạn.
Bạn phân cấp bị sai, nên mã không chạy:

1
1.2
1.2
1.2
1
1.2
...

Phải phân cấp như sau:
1
1.1
1.2
1.3
2
2.1
2.1.1
2.1.2

Tôi đã viết mã mới, vận dụng đơn giản hơn, bạn có thể tham chiếu trực tiếp đến cột thứ tự phân cấp 1 2 2 2 3 3 3 trong dữ liệu của bạn mà không cần phải phân cấp 1 1.1 1.2 ..., bạn có thể tham khảo:
 

File đính kèm

  • GroupByTree.xlsm
    57.1 KB · Đọc: 28
Lần chỉnh sửa cuối:
Upvote 0
Bạn phân cấp bị sai, nên mã không chạy:

1
1.2
1.2
1.2
1
1.2
...

Phải phân cấp như sau:
1
1.1
1.2
1.3
2
2.1
2.1.1
2.1.2

Tôi đã viết mã mới, vận dụng đơn giản hơn, bạn có thể tham chiếu trực tiếp đến cột thứ tự phân cấp 1 2 2 2 3 3 3 trong dữ liệu của bạn mà không cần phải phân cấp 1 1.1 1.2 ..., bạn có thể tham khảo:
Cảm ơn bạn, để mình thử mã mới của bạn xem sao.
Còn file của mình gửi lên, cách phân cấp ở 2 sheet hoàn toàn giống nhau, nhưng 1 cái chạy được, 1 cái không chạy được bạn à.
 
Upvote 0
Bạn phân cấp bị sai, nên mã không chạy:

1
1.2
1.2
1.2
1
1.2
...

Phải phân cấp như sau:
1
1.1
1.2
1.3
2
2.1
2.1.1
2.1.2

Tôi đã viết mã mới, vận dụng đơn giản hơn, bạn có thể tham chiếu trực tiếp đến cột thứ tự phân cấp 1 2 2 2 3 3 3 trong dữ liệu của bạn mà không cần phải phân cấp 1 1.1 1.2 ..., bạn có thể tham khảo:
Cảm ơn bạn, mình đã làm được rồi.
 
Upvote 0
Bạn phân cấp bị sai, nên mã không chạy:

1
1.2
1.2
1.2
1
1.2
...

Phải phân cấp như sau:
1
1.1
1.2
1.3
2
2.1
2.1.1
2.1.2

Tôi đã viết mã mới, vận dụng đơn giản hơn, bạn có thể tham chiếu trực tiếp đến cột thứ tự phân cấp 1 2 2 2 3 3 3 trong dữ liệu của bạn mà không cần phải phân cấp 1 1.1 1.2 ..., bạn có thể tham khảo:
Có cách nào để làm cho cột tương tự như cho hàng không bạn nhỉ?
Cảm ơn bạn.
 
Upvote 0
Web KT
Back
Top Bottom