Điểm danh và thu nhận đáp án của học sinh qua Chat Zoom

Lê Bá Nhẫn

Yêu THVBA nhất
Em chào mọi người. Mọi người giúp em với. Em mới tìm hiểu VBA.
Em có dữ liệu ở sheet 1 (DanhSachHS), sheet 2 (B1_Chat). Trong sheet 2: Em muốn cột B sẽ xuất dữ liệu sang cột D, E, F,....
Rồi từ sheet 2 (cột D, E, F, ...) suât dữ liệu sang sheet 1: Điểm Danh, Câu 1, Câu 2, ...
Cuối cùng là tô đỏ đáp án đúng.
Chọn thời gian học để xuất dữ liệu.
Chọn lớp để xuất dự liệu.
Cảm ơn mọi người giúp đỡ.
Link excel:
 
T

thanhphong

Guest
Tôi nghĩ nếu bạn sử dụng hình ảnh trực quan thì sẽ giảm thiểu thời gian đọc hiểu cho người khác.
Sau đây tôi phân tích yêu cầu của bạn:
Cấu trúc file:
Bạn cần đăng nhập để thấy hình ảnh

Sheet 2:
INPUT: Cột B
OUTPUT: Bắn ra các cột D, E, F
Bạn cần đăng nhập để thấy hình ảnh

Nội dung công việc này có thể thực hiện được.
Có một thắc mắc nho nhỏ tại sao cột C lại để trống, nó có ý nghĩa gì không? Lý do bỏ trống là gì?

Nội dung công việc tiếp theo: Xuất dữ liệu từ sheet 2 sang sheet 1:
Bạn cần đăng nhập để thấy hình ảnh


Vấn đề ở đây là máy tính không hiểu 01-VTAn là Vũ Tiến An. Do đó bạn cần có một sheet DATA, định nghĩa các tên tương ứng:
Ngoài ra, để phòng tránh tên học sinh trùng nhau, mỗi học sinh nên có một mã số học sinh do bạn quy ước.
Bạn cần đăng nhập để thấy hình ảnh

Bạn cần đăng nhập để thấy hình ảnh
 
D

Deleted member 199

Guest
Tôi đang định nói dữ liệu có tính quy luật khi nhìn vào cột số thứ tự ở sheet 1 và dữ liệu trên sheet 2:
Bạn cần đăng nhập để thấy hình ảnh

Nhưng tôi phải khựng lại vì thấy cột STT trên sheet 1 sao nó lại bị lặp lại như vậy nhỉ?
Bạn cần đăng nhập để thấy hình ảnh
 

BKKBG

Yêu THVBA nhất
Tác giả topic nên nói rõ hơn logic. Không ai hiểu rõ data bằng bạn. Vì những người ở đây có khi không biết zoom là cái gì, file này do đâu mà có. Nếu bạn là người tiếp xúc với file này nhiều chắc là hiểu rõ quy luật hơn ai hết.

Nếu nhìn vào file trên, tôi nghĩ nick name đang ghép số thứ tự với các chữ cái đầu + tên để ra nick name:
Ví dụ:
1 Vũ Tiến An => 01-VTAn
2 Đỗ Trọng Hoàng => 02-ĐTHoàng

Điều tôi không hiểu là, nếu logic trên là đúng, thì:
4 Lê Long Hồ => 04-LLHồ , nhưng của file của bạn đang thể hiện là 04-LLHo (bị bỏ dấu). Tại sao trường hợp ở trên 02-ĐTHoàng thì không bị bỏ dấu mà trường hợp học sinh Hồ lại bị bỏ dấu là 04-LLHo.
Vì không có tính quy luật, nên không thể code phán đoán nick name này là ai trong danh sách học sinh ở sheet 1. File demo chưa thể hiện trường hợp học sinh trùng tên thì thực tế data như thế nào-đây là trường hợp quan trọng mà người code rất quan tâm.
 

Lê Bá Nhẫn

Yêu THVBA nhất
Tôi nghĩ nếu bạn sử dụng hình ảnh trực quan thì sẽ giảm thiểu thời gian đọc hiểu cho người khác.
Sau đây tôi phân tích yêu cầu của bạn:
Cấu trúc file:
Bạn cần đăng nhập để thấy hình ảnh

Sheet 2:
INPUT: Cột B
OUTPUT: Bắn ra các cột D, E, F
Bạn cần đăng nhập để thấy hình ảnh

Nội dung công việc này có thể thực hiện được.
Có một thắc mắc nho nhỏ tại sao cột C lại để trống, nó có ý nghĩa gì không? Lý do bỏ trống là gì?

Nội dung công việc tiếp theo: Xuất dữ liệu từ sheet 2 sang sheet 1:
Bạn cần đăng nhập để thấy hình ảnh


Vấn đề ở đây là máy tính không hiểu 01-VTAn là Vũ Tiến An. Do đó bạn cần có một sheet DATA, định nghĩa các tên tương ứng:
Ngoài ra, để phòng tránh tên học sinh trùng nhau, mỗi học sinh nên có một mã số học sinh do bạn quy ước.
Bạn cần đăng nhập để thấy hình ảnh

Bạn cần đăng nhập để thấy hình ảnh
Em cảm ơn thầy
 

Lê Bá Nhẫn

Yêu THVBA nhất
Tác giả topic nên nói rõ hơn logic. Không ai hiểu rõ data bằng bạn. Vì những người ở đây có khi không biết zoom là cái gì, file này do đâu mà có. Nếu bạn là người tiếp xúc với file này nhiều chắc là hiểu rõ quy luật hơn ai hết.

Nếu nhìn vào file trên, tôi nghĩ nick name đang ghép số thứ tự với các chữ cái đầu + tên để ra nick name:
Ví dụ:
1 Vũ Tiến An => 01-VTAn
2 Đỗ Trọng Hoàng => 02-ĐTHoàng

Điều tôi không hiểu là, nếu logic trên là đúng, thì:
4 Lê Long Hồ => 04-LLHồ , nhưng của file của bạn đang thể hiện là 04-LLHo (bị bỏ dấu). Tại sao trường hợp ở trên 02-ĐTHoàng thì không bị bỏ dấu mà trường hợp học sinh Hồ lại bị bỏ dấu là 04-LLHo.
Vì không có tính quy luật, nên không thể code phán đoán nick name này là ai trong danh sách học sinh ở sheet 1. File demo chưa thể hiện trường hợp học sinh trùng tên thì thực tế data như thế nào-đây là trường hợp quan trọng mà người code rất quan tâm.
Tên trong danh sách là em chạy code, còn tên bên B1_Chat là tên hiện thị của hs (Nhiều em cũng ko làm theo qui luật của em đặt ra). Em cảm ơn thầy đã góp ý.
 

Lê Bá Nhẫn

Yêu THVBA nhất
file của em gửi trên đó là file em đã chỉnh lại cho đẹp. File Chat Zoom thô là file này (sheet2).
Link:
 

BKKBG

Yêu THVBA nhất
Vì nick zoom là duy nhất nên file bạn vừa cập nhật có thể giải quyết bài toán của bạn.
Cần thêm một file input đáp án. File excel này nghe nói Tool Ex Test có thể xuất ra, thầy liên hệ admin hỏi lại xem.
Bạn cần đăng nhập để thấy hình ảnh


Quay lại file ban đầu một tí.
Các số 4,1,2 này có ý nghĩa gì?
Bạn cần đăng nhập để thấy hình ảnh

Tôi tưởng điểm danh chỉ cần tích "x" là được.
Bạn cần đăng nhập để thấy hình ảnh
 

Lê Bá Nhẫn

Yêu THVBA nhất
Vì nick zoom là duy nhất nên file bạn vừa cập nhật có thể giải quyết bài toán của bạn.
Cần thêm một file input đáp án. File excel này nghe nói Tool Ex Test có thể xuất ra, thầy liên hệ admin hỏi lại xem.
Bạn cần đăng nhập để thấy hình ảnh


Quay lại file ban đầu một tí.
Các số 4,1,2 này có ý nghĩa gì?
Bạn cần đăng nhập để thấy hình ảnh

Tôi tưởng điểm danh chỉ cần tích "x" là được.
Bạn cần đăng nhập để thấy hình ảnh
Em tự suy nghĩ ra vậy. Theo ý thầy là điểm danh là đánh dấu x mới đúng. Cái file thầy đang nói là em đã chỉnh sửa lại thủ công nhiều lắm. Em mới gửi lên file thô mà em tương tác với học sinh thầy xem lại giúp em.
 
Tôi nghĩ code có thể xử lý từ file thô mà bạn nêu.
Đầu tiên ta cần thống nhất với nhau, ở sheet 1, tại cột D, bạn sẽ liệt kê danh sách nick zoom một cách chính xác vào đây.
Ở sheet ZOOM, mong muốn khi thầy giáo đọc tên điểm danh thì học sinh ghi 1.
Theo file bạn gửi thì học sinh điền cả 2 vào. Rất thiếu nhất quán. Chỉ cần gõ 1.
Đối với câu hỏi do giáo viên nêu, học sinh nhập theo cấu trúc mà bạn đang nêu: 1A, 2B,... Nếu học sinh không trả lời theo cấu trúc này, coi như không hợp lệ.
Nếu các yêu cầu trên đáp ứng được, thì có thể code từ dữ liệu thô trên ZOOM, điền chính xác vào sheet 1: Điểm danh, nội dung các câu trả lời của từng học sinh.

Đối với file đáp án câu hỏi, bạn cần cung cấp file demo thì mới code kiểm tra đáp án đúng cho bạn được.
 

Lê Bá Nhẫn

Yêu THVBA nhất
Tôi nghĩ code có thể xử lý từ file thô mà bạn nêu.
Đầu tiên ta cần thống nhất với nhau, ở sheet 1, tại cột D, bạn sẽ liệt kê danh sách nick zoom một cách chính xác vào đây.
Ở sheet ZOOM, mong muốn khi thầy giáo đọc tên điểm danh thì học sinh ghi 1.
Theo file bạn gửi thì học sinh điền cả 2 vào. Rất thiếu nhất quán. Chỉ cần gõ 1.
Đối với câu hỏi do giáo viên nêu, học sinh nhập theo cấu trúc mà bạn đang nêu: 1A, 2B,... Nếu học sinh không trả lời theo cấu trúc này, coi như không hợp lệ.
Nếu các yêu cầu trên đáp ứng được, thì có thể code từ dữ liệu thô trên ZOOM, điền chính xác vào sheet 1: Điểm danh, nội dung các câu trả lời của từng học sinh.

Đối với file đáp án câu hỏi, bạn cần cung cấp file demo thì mới code kiểm tra đáp án đúng cho bạn được.
Vâng, cảm ơn bạn.
 

Lê Bá Nhẫn

Yêu THVBA nhất
Tôi nghĩ code có thể xử lý từ file thô mà bạn nêu.
Đầu tiên ta cần thống nhất với nhau, ở sheet 1, tại cột D, bạn sẽ liệt kê danh sách nick zoom một cách chính xác vào đây.
Ở sheet ZOOM, mong muốn khi thầy giáo đọc tên điểm danh thì học sinh ghi 1.
Theo file bạn gửi thì học sinh điền cả 2 vào. Rất thiếu nhất quán. Chỉ cần gõ 1.
Đối với câu hỏi do giáo viên nêu, học sinh nhập theo cấu trúc mà bạn đang nêu: 1A, 2B,... Nếu học sinh không trả lời theo cấu trúc này, coi như không hợp lệ.
Nếu các yêu cầu trên đáp ứng được, thì có thể code từ dữ liệu thô trên ZOOM, điền chính xác vào sheet 1: Điểm danh, nội dung các câu trả lời của từng học sinh.

Đối với file đáp án câu hỏi, bạn cần cung cấp file demo thì mới code kiểm tra đáp án đúng cho bạn được.
Em đã qui định rồi. Học sinh cứ thích. Em cũng nhắc hoài. Em cảm ơn anh nhiều
 

snow26

Yêu THVBA
@Lê Bá Nhẫn Bạn thử nếu đáp án 2B và 12A mà học sinh cho đáp án là 2A thì chương trình có bị nhầm lẫn không, vừa nghĩ ra trường hợp đó. Chắc phải sửa lại code tí xíu.
 

snow26

Yêu THVBA
@Lê Bá Nhẫn
Tôi thêm một đáp án giả định vào sheet DAPAN như ở trên tôi nói, là lỗi.
Fix lỗi , bạn dùng file này sẽ chặt chẽ hơn:
 

tuhocvba

Administrator
Thành viên BQT
Vì Admin và Mod không được can thiệp vào Box này, nên tôi chỉ có một góp ý nho nhỏ. Code để vậy thì ai còn góp ý được nữa?
Ngoài ra cùng một câu hỏi 1, lúc đầu học sinh X trả lời 1A. Lúc sau trả lời 1B. Lúc sau nữa trả lời 1C, thì code trên đã xử lý lấy đáp án cuối cùng là 1C hay chưa?
 
Top