Kako napraviti ispitni list s više izbora u Excelu

Podijeli sada:

Kao trener, održali biste nekoliko seminara za svoje učenike. Sada je vrijeme da sa svojim učenicima podijelite Excel radnu svesku koja će vam pomoći da utvrdite koliko su razumjeli. Pripremite digitalni ispitni list s više izbora slijedeći ovaj članak.

Preuzeti sada

Ako želite što prije početi koristiti softver, možete:

Preuzmite softver odmah

Inače, ako želite DIY, možete pročitati sadržaj ispod.

Hajde da pripremimo GUI

sadržajPripremite test na listu

Pripremite sažetak lista

Pripremite bazu podataka listova

Hajde da pripremimo bazu podataka

Dodajte pitanja, opcije i tačan odgovor na listu "Baza podataka"

Učinimo ga funkcionalnim

Kopirajte ovu skriptu u novi modul u radnoj svesci sa omogućenim makroima.

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

Kopirajte ovu skriptu u prozor koda lista “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

Kopirajte ovu skriptu u prozor koda "ThisWorkook"

Private Sub Workbook_Open()
    Call Module1.Prepare_Test
    Sheets("Database").Visible = 2
    Sheets("Summary").Visible = 2
End Sub

Kako funkcioniše?

Kada korisnik otvori radnu knjigu, makro će se pokrenuti da sakrije listove „Baza podataka“ i „Sažetak“. Ako list “Baza podataka” nije sakriven od korisnika, svi odgovori su izloženi. Takođe nije neophodno da učenik vidi list „Sažetak“. Prije slanja radne knjige korisnicima, potrebno je pokrenuti makro “Prepare_Test” koji će popuniti list “Test”. Korisnici mogu odabrati bilo koju opciju, a makro će označiti odabrani odgovor žutom bojom. Makro “Show_Result” će uporediti odabrane opcije na listu “Test” sa odgovorima na listu “Baza podataka” i identificirati broj tačnih odgovora.

Zar Listovi nisu sakriveni?

VBA skripta ne može upozoriti svojstva oštećenog Excel radnog lista. u takvom slučaju, oporaviti Excel radni list i ponovo pokrenite makro.

Uvod za autora:

Nick Vipond je stručnjak za oporavak podataka DataNumen, Inc., koji je svjetski lider u tehnologijama za oporavak podataka, uključujući oštećeni Word i Outlook softverski proizvodi za oporavak. Za više informacija posjetite www.datanumen.com

Podijeli sada:

Komentari su zatvoreni.