Là một huấn luyện viên, bạn sẽ tiến hành một số cuộc hội thảo cho sinh viên của mình. Bây giờ là lúc bạn chia sẻ sổ làm việc Excel với học viên của mình, sổ làm việc này sẽ giúp bạn xác định mức độ hiểu biết của họ. Chuẩn bị bảng kiểm tra kỹ thuật số trắc nghiệm bằng cách làm theo bài viết này.
Tải xuống Ngay
Nếu bạn muốn bắt đầu sử dụng phần mềm càng sớm càng tốt, bạn có thể:
Tải xuống phần mềm ngay bây giờ
Còn không, nếu bạn muốn DIY, bạn có thể đọc nội dung bên dưới.
Hãy chuẩn bị GUI
Nội dung
Hãy chuẩn bị cơ sở dữ liệu
Thêm câu hỏi, phương án và đáp án đúng vào sheet “Cơ sở dữ liệu”
Hãy làm cho nó hoạt động
Sao chép tập lệnh này vào một mô-đun mới trong sổ làm việc đã bật macro của bạn.
Sub Prepare_Test()
Dim lr As Long
Dim r As Long
Dim rinq As Long
rinq = 0
lr = Sheets("Database").Range("A" & Rows.Count).End(xlUp).Row
For r = 3 To lr
rinq = rinq + 6
Sheets("Test").Range("C" & rinq).Value = Sheets("Database").Range("A" & r).Value
Sheets("Test").Range("C" & rinq + 1).Value = Sheets("Database").Range("B" & r).Value
Sheets("Test").Range("C" & rinq + 2).Value = Sheets("Database").Range("C" & r).Value
Sheets("Test").Range("C" & rinq + 3).Value = Sheets("Database").Range("D" & r).Value
Sheets("Test").Range("C" & rinq + 4).Value = Sheets("Database").Range("E" & r).Value
Next r
End Sub
Sub Show_Result()
Dim lr As Long
Dim r As Long
Dim rinq As Long
rinq = 0
Sheets("Database").Visible = -1
Sheets("Summary").Visible = -1
lr = Sheets("Database").Range("A" & Rows.Count).End(xlUp).Row
Dim v_ccount As Long
v_ccount = 0
For r = 3 To lr
Dim v_answer As String
v_answer = "Option " & Sheets("Database").Range("F" & r).Value
rinq = rinq + 6
If Sheets("Test").Range("C" & rinq + 1).Interior.Color = vbYellow And Sheets("Test").Range("B" & rinq + 1).Value = v_answer Then
v_ccount = v_ccount + 1
End If
If Sheets("Test").Range("C" & rinq + 2).Interior.Color = vbYellow And Sheets("Test").Range("B" & rinq + 2).Value = v_answer Then
v_ccount = v_ccount + 1
End If
If Sheets("Test").Range("C" & rinq + 3).Interior.Color = vbYellow And Sheets("Test").Range("B" & rinq + 3).Value = v_answer Then
v_ccount = v_ccount + 1
End If
If Sheets("Test").Range("C" & rinq + 4).Interior.Color = vbYellow And Sheets("Test").Range("B" & rinq + 4).Value = v_answer Then
v_ccount = v_ccount + 1
End If
Next r
Sheets("Summary").Range("C7").Value = Sheets("Test").Range("F3").Value
Sheets("Summary").Range("C11").Value = lr - 2
Sheets("Summary").Range("F11").Value = v_ccount
Sheets("Summary").Range("I11").Value = (lr - 2) - v_ccount
End Sub
Copy đoạn script này vào cửa sổ code của sheet “Test”
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Dim ar As Long
ar = Target.Row
Range("C" & ar & ":F" & ar).Interior.Color = vbYellow
End Sub
Sao chép tập lệnh này vào cửa sổ mã của “ThisWorkook”
Private Sub Workbook_Open()
Call Module1.Prepare_Test
Sheets("Database").Visible = 2
Sheets("Summary").Visible = 2
End Sub
Cách sử dụng?
Khi người dùng mở sổ làm việc, macro sẽ chạy để ẩn trang tính “Cơ sở dữ liệu” và “Tóm tắt”. Nếu trang tính “Cơ sở dữ liệu” không bị ẩn khỏi người dùng, tất cả các câu trả lời sẽ được hiển thị. Học sinh cũng không cần phải xem tờ “Tóm tắt”. Trước khi gửi sổ làm việc cho người dùng, nên chạy macro “Prepare_Test”, macro này sẽ điền vào trang tính “Kiểm tra”. Người dùng có thể chọn bất kỳ tùy chọn nào và macro sẽ đánh dấu câu trả lời đã chọn bằng màu vàng. Macro “Show_Result” sẽ so sánh các tùy chọn đã chọn trên trang tính “Kiểm tra” với câu trả lời trên trang tính “Cơ sở dữ liệu” và xác định số lượng câu trả lời đúng.
Trang tính không bị ẩn?
Tập lệnh VBA không thể cảnh báo các thuộc tính của trang tính Excel bị hỏng. Trong trường hợp như vậy, phục hồi Excel trang tính và chạy lại macro.
Giới thiệu tác giả:
Nick Vipond là một chuyên gia phục hồi dữ liệu trong DataNumen, Inc., công ty hàng đầu thế giới về công nghệ khôi phục dữ liệu, bao gồm hư từ và các sản phẩm phần mềm khôi phục triển vọng. Để biết thêm thông tin, hãy truy cập www.datanumennăm

