Thu gọn dữ liệu sử dụng ComboBox như thế nào?

Liên hệ QC

ngvu20131003

Thành viên mới
Tham gia
2/3/20
Bài viết
17
Được thích
2
Xin kính chào diễn đàn Giải pháp Excel! Em có 1 vấn đề sau đây:
Có 1 file mẫu như sau, nó như 1 file điểm danh theo từng tuần (tuần 1 tháng 1, tuần 2 tháng 1, tuần 3 tháng 1, tuần 4 tháng 1,...). Thay vì để nguyên thủy danh sách như vậy thì nó sẽ tràn lan ra, nhìn sẽ bị nhức mắt và có thể nhập dữ liệu sai vị trí tuần, tháng. Em muốn sử dụng combobox để tạo 1 list gồm các tuần như trên... cho đến hết năm học. Yêu cầu: Mỗi khi em chọn bất kì một thời gian nào (ví dụ: tuần 3 tháng 4) thì trên sheet sẽ chỉ hiện CỐ ĐỊNH cột Mã số HS, Tên, Giới tính và hiện vùng chứa khoảng thời gian đó hiện ra (ví dụ: tuần 3 tháng 4), còn tất cả còn lại sẽ biến mất, tương tự như vậy khi chọn các thời gian khác.
Em phải làm như thế nào ạ? Xin các cao nhân chỉ giáo!
Em xin cám ơn rất nhiều!

* Note: Để dễ hình dung, ai đã sử dụng phần mềm Vietschool dành cho Thầy/Cô, khi có chức năng nhập điểm nhiều môn thì khi chọn môn nào thì sẽ hiện điểm của môn đó ra, hoặc là điểm danh trong VS, chọn tháng nào thì tháng đó hiện ra, còn lại đóng (sở dĩ em biết là vì vài năm trước có 1, 2 Thầy/Cô nhờ em thao tác giúp trên phần mềm)!

File đính kèm
 

File đính kèm

Xin kính chào diễn đàn Giải pháp Excel! Em có 1 vấn đề sau đây:
Có 1 file mẫu như sau, nó như 1 file điểm danh theo từng tuần (tuần 1 tháng 1, tuần 2 tháng 1, tuần 3 tháng 1, tuần 4 tháng 1,...). Thay vì để nguyên thủy danh sách như vậy thì nó sẽ tràn lan ra, nhìn sẽ bị nhức mắt và có thể nhập dữ liệu sai vị trí tuần, tháng. Em muốn sử dụng combobox để tạo 1 list gồm các tuần như trên... cho đến hết năm học. Yêu cầu: Mỗi khi em chọn bất kì một thời gian nào (ví dụ: tuần 3 tháng 4) thì trên sheet sẽ chỉ hiện CỐ ĐỊNH cột Mã số HS, Tên, Giới tính và hiện vùng chứa khoảng thời gian đó hiện ra (ví dụ: tuần 3 tháng 4), còn tất cả còn lại sẽ biến mất, tương tự như vậy khi chọn các thời gian khác.
Em phải làm như thế nào ạ? Xin các cao nhân chỉ giáo!
Em xin cám ơn rất nhiều!

* Note: Để dễ hình dung, ai đã sử dụng phần mềm Vietschool dành cho Thầy/Cô, khi có chức năng nhập điểm nhiều môn thì khi chọn môn nào thì sẽ hiện điểm của môn đó ra, hoặc là điểm danh trong VS, chọn tháng nào thì tháng đó hiện ra, còn lại đóng (sở dĩ em biết là vì vài năm trước có 1, 2 Thầy/Cô nhờ em thao tác giúp trên phần mềm)!

File đính kèm
Gúp ý cho bạn:
Bạn đăng bài trong Box Lập trình với Excel nên khi nhập liệu người ta sẽ nghĩ ngay đến 02 thứ đó SheetForm hoặc UserForm để nhập liệu theo chiều dọc để thuận tiện cho việc lọc bất kỳ thứ gì (theo ngày, tuần, tháng, năm) hoặc tổng hợp chứ không ai làm mỗi tuần là 1 bảng và giàn hàng ngang như bạn đã làm là thua luôn.

Một vấn đề khác cũng khá quan trọng mà bạn không nêu ra đó là bạn theo dõi chỉ có một lớp hay chung cả trường, vì vấn đề này nó liên quan đến việc chọn lớp và chỉ hiện danh sách của lớp chọn.

Trước mắt tôi chỉ góp ý chung chung, khi bạn nêu cụ thể, rõ ràng vấn đề mong muốn của bạn tôi sẽ góp ý tiếp cho đến khi hiểu và thống nhất thì tôi mới trợ giúp
 
Upvote 0
Mình cho rằng nói đến điểm danh thì phải ghi theo ngày trong tuần; Hơn nữa chỉ điểm danh theo số ít mà thôi; Số ít ở đây thường là số vắng
Nhưng vắng có thể có lý do (được phép) hay không phép.
Đó là chuyện nhập liệu
Còn chuyện thể hiện kết quả thống kê theo iêu cầu từng tuần lại là chuyện khác nữa
Theo mình cần tách bạch 2 chuyện như vậy sẽ suông sẻ hơn trong công việc quản lý.

Thân ái!
 
Upvote 0
Có 1 file mẫu như sau, nó như 1 file điểm danh theo từng tuần (tuần 1 tháng 1, tuần 2 tháng 1, tuần 3 tháng 1, tuần 4 tháng 1,...). Thay vì để nguyên thủy danh sách như vậy thì nó sẽ tràn lan ra, nhìn sẽ bị nhức mắt và có thể nhập dữ liệu sai vị trí tuần, tháng. Em muốn sử dụng combobox để tạo 1 list gồm các tuần như trên... cho đến hết năm học. Yêu cầu: Mỗi khi em chọn bất kì một thời gian nào (ví dụ: tuần 3 tháng 4) thì trên sheet sẽ chỉ hiện CỐ ĐỊNH cột Mã số HS, Tên, Giới tính và hiện vùng chứa khoảng thời gian đó hiện ra (ví dụ: tuần 3 tháng 4), còn tất cả còn lại sẽ biến mất, tương tự như vậy khi chọn các thời gian khác.
Trên Sheet1? Nếu là trên Sheet1 thì tôi hiểu như sau: khi chọn 1 tuần nào đó thì ẩn tất cả các cột của sheet1, chỉ để lại các cột A:F và các cột có chứa tuần được chọn. Tức nếu chọn "Tuần 3 tháng 4" thì ẩn các cột G:GT và HI:JZ.

Nếu tôi hiểu đúng như trên thì đọc tiếp. Ngược lại thì dừng ở đây. Và lần sau nhớ mô tả cụ thể hơn.

Code có trong module Sheet1. Để xem thì: Alt + F11 -> đúp chuột vào mục "Sheet1 (Sheet1)". Tôi thêm vào ComboBox1 mục "Tất cả". Mục đích để ở thời điểm bất kỳ có thể hiển thị lại tất cả các tuần. ComboBox1 tôi để ở dòng 2, từ cột C tới F.

Code nhập các tuần vào ComboBox không thể để trong Workbook_Open vì trong quá trình làm việc bạn có thể tạo thêm các tuần. Có thể đặt trong Worksheet_Activate của sheet1 nhưng nếu tạo thêm tuần thì phải chuyển sang sheet khác rồi về lại sheet1. Tôi chọn ComboBox1_DropButtonClick. Dữ liệu cũng chả nhiều, vì chỉ có nhiều nhất là 48-53 tuần trong 1 năm.

Yêu cầu: Từ cột G trở đi mỗi tuần chiếm 14 cột liên tiếp. Mỗi tuần ở dòng 1 có 14 ô gộp. Tức y như tập tin hiện hành.
 

File đính kèm

Upvote 0
Trên Sheet1? Nếu là trên Sheet1 thì tôi hiểu như sau: khi chọn 1 tuần nào đó thì ẩn tất cả các cột của sheet1, chỉ để lại các cột A:F và các cột có chứa tuần được chọn. Tức nếu chọn "Tuần 3 tháng 4" thì ẩn các cột G:GT và HI:JZ.

Nếu tôi hiểu đúng như trên thì đọc tiếp. Ngược lại thì dừng ở đây. Và lần sau nhớ mô tả cụ thể hơn.

Code có trong module Sheet1. Để xem thì: Alt + F11 -> đúp chuột vào mục "Sheet1 (Sheet1)". Tôi thêm vào ComboBox1 mục "Tất cả". Mục đích để ở thời điểm bất kỳ có thể hiển thị lại tất cả các tuần. ComboBox1 tôi để ở dòng 2, từ cột C tới F.

Code nhập các tuần vào ComboBox không thể để trong Workbook_Open vì trong quá trình làm việc bạn có thể tạo thêm các tuần. Có thể đặt trong Worksheet_Activate của sheet1 nhưng nếu tạo thêm tuần thì phải chuyển sang sheet khác rồi về lại sheet1. Tôi chọn ComboBox1_DropButtonClick. Dữ liệu cũng chả nhiều, vì chỉ có nhiều nhất là 48-53 tuần trong 1 năm.

Yêu cầu: Từ cột G trở đi mỗi tuần chiếm 14 cột liên tiếp. Mỗi tuần ở dòng 1 có 14 ô gộp. Tức y như tập tin hiện hành.
Em cám ơn thầy ạ. Thầy hiểu đúng ý của em rồi đó. Em cám ơn rất nhiều !
 
Upvote 0
Em cám ơn thầy ạ. Thầy hiểu đúng ý của em rồi đó. Em cám ơn . . . !
Với thiết kế như vậy thì chuyện hiểu nhau chỉ là vấn đề không quan trọng mấy cho lắm;
Cái quan trọng ở đây là thiết kế trang tính hay bảng tính có làm ta vận hành thuận tiện hay không mà thôi.

Thử nghĩ xem với vạn rưỡu HS hay HV mà ta trãi dài 1.5 K hàng & ~ 300 cột vậy theo dõi có tối ưu chưa?

Chi bằng ta chỉ nhập 1 dòng cho em HS nào đó vắng theo các cột (trường) : [STT], [Ngày], [Mã HV], ([Ho & Ten HV]), [Lý do vắng], [Ghi chú]
Thống kê có thể cho ta biết là ở bạn có khoảng 35 lớp, 1 ngày học 1 lớp vắng (với mọi lý do) là 3 em (=> 100 dòng 1 ngày => 3200/năm; & chí cùng lắm 5 cột dữ liệu mà thôi!)

Còn vấn đề thống kê theo từng tuần để VBA ló cho bạn, được không?

Nói thêm về mả HV của bạn:
Bạn đang ấn định mã HV theo khối lớp;
Sẽ không hay vài điều:
(1) Mã HV nên cố đinh cho 1 em HV trong suối quá trình em HV đó đang sinh hoạt trong trường; Không thể:
1.1: Mỗi năm chuyển mã HV 1 lần cho các em lên lớp hay ở lại lớp?
1.2 Trong năm học có khi HV chuyển lớp & chuyển trường khác tới sẽ làm sao?

(2) Mã HV của bạn đang dư ký tự "-" không cần thiết
Mình xin gợi ý với bạn bộ mã như sau:

Ma HSHo & TenMã NVHo & Ten
B17-25A Nguyễn Hoàng PhúcAHP00A Nguyễn Hoàng Phúc
B13-41Ái Kim VyAKV00Ái Kim Vy
C15-21BẠCH NHẬT MINHBAL00Bùi Ánh Linh
B12-18Bùi Ánh LinhBAT00BÙI HOÀNG ANH TUẤN
C09-28ĐÀO THÀNH PHÁTHAT01HỒ NGỌC ANH THƯ
C05-33ĐÀO THẾ PHONGHAT02HOÀNG NGỌC ANH THƯ
B15-14Đào Thị Ánh LyHAT03Huỳnh Anh Thuận
B05-25Đào Thị Thanh NgaHAT04HỒ LÊ ANH TÚ
B04-32Đào Thị Thanh TâmHBH00Huỳnh Đỗ Bảo Hân
C07-24DIỆP MỸ NGỌCDFT00Dương Đức Tân
C03-08DIỆP THÀNH ĐẠTHBT01HỒ BẢO THỊNH
C05-21ĐINH BẢO LÂMHBT02HUỲNH THỊ BÍCH TRÂM
B17-18Đinh Bùi Thanh NgânHBT03HOÀNG BẢO TRANG
C08-05ĐINH GIA BẢOHBV00HỒ BÁCH VIỆT
B06-42Đỗ Ngọc Khánh UyênHMT01Huỳnh Ngọc Minh Thư
C12-17ĐỖ NGUYỄN NGỌC LINHHMT02Hồ Minh Thuận
B02-34Đỗ Phạm Hoàng TrâmHMT03Hoàng Vũ Minh Thy
B01-02Đỗ Phương AnhHMT04Huỳnh Mai Trâm
C07-14ĐỖ PHƯƠNG LINHHMT05Huỳnh Thị Minh Trâm
C06-28ĐỖ QUANG PHƯỚCHMT06HUỲNH MINH TRÍ

Thân chào bạn!
 
Lần chỉnh sửa cuối:
Upvote 0
Web KT

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

Back
Top Bottom