Als Trainer hätten Sie mehrere Seminare für Ihre Schüler durchgeführt. Jetzt ist es an der Zeit, dass Sie Ihren Schülern eine Excel-Arbeitsmappe zur Verfügung stellen, anhand derer Sie feststellen können, wie viel sie verstanden haben. Bereiten Sie ein digitales Multiple-Choice-Prüfungsblatt vor, indem Sie diesem Artikel folgen.
Jetzt kostenlos herunterladen
Wenn Sie die Software so schnell wie möglich nutzen möchten, dann können Sie Folgendes tun:
Laden Sie die Software jetzt herunter
Andernfalls können Sie den folgenden Inhalt lesen, wenn Sie selbst basteln möchten.
Bereiten wir die GUI vor
Inhalt
Bereiten wir die Datenbank vor
Fügen Sie Fragen, Optionen und die richtige Antwort auf dem Blatt "Datenbank" hinzu.
Machen wir es funktionsfähig
Kopieren Sie dieses Skript in ein neues Modul in Ihrer makrofähigen Arbeitsmappe.
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
Kopieren Sie dieses Skript in das Codefenster des Blattes "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
Kopieren Sie dieses Skript in das Codefenster von "ThisWorkook".
Private Sub Workbook_Open()
Call Module1.Prepare_Test
Sheets("Database").Visible = 2
Sheets("Summary").Visible = 2
End Sub
Wie funktioniert es?
Wenn ein Benutzer die Arbeitsmappe öffnet, wird das Makro ausgeführt, um die Blätter "Datenbank" und "Zusammenfassung" auszublenden. Wenn das Blatt „Datenbank“ nicht vor dem Benutzer verborgen ist, werden alle Antworten angezeigt. Es ist auch nicht erforderlich, dass ein Schüler das Blatt „Zusammenfassung“ sieht. Vor dem Senden der Arbeitsmappe an Benutzer sollte das Makro "Prepare_Test" ausgeführt werden, das das Blatt "Test" ausfüllt. Benutzer können eine beliebige Option auswählen und das Makro hebt die ausgewählte Antwort gelb hervor. Das Makro „Show_Result“ vergleicht ausgewählte Optionen auf Blatt „Test“ mit Antworten auf Blatt „Datenbank“ und ermittelt die Anzahl der richtigen Antworten.
Haben Blätter nicht versteckt?
Das VBA-Skript kann die Eigenschaften eines beschädigten Excel-Arbeitsblatts nicht benachrichtigen. In einem solchen Fall, Excel wiederherstellen Arbeitsblatt und führen Sie das Makro erneut aus.
Einführung des Autors:
Nick Vipond ist ein Datenrettungsexperte in DataNumen, Inc., das weltweit führend bei Datenwiederherstellungstechnologien ist, einschließlich beschädigtes Wort und Outlook Recovery-Softwareprodukte. Für weitere Informationen besuchen Sie www.datanumen.com €XNUMX

