Kuinka tehdä monivalintakokeitaulukko Excelissä

Valmentajana olisit johtanut useita seminaareja opiskelijoille. Nyt on aika jakaa Excel-työkirja oppilaidesi kanssa, mikä auttaa sinua tunnistamaan, kuinka paljon he ovat ymmärtäneet. Valmista monivalintainen digitaalinen koelomake seuraamalla tätä artikkelia.

Lataa nyt

Jos haluat aloittaa ohjelmiston käytön mahdollisimman pian, voit:

Lataa ohjelmisto nyt

Muussa tapauksessa voit lukea sisällön alla olevasta sisällöstä.

Valmistellaan käyttöliittymä

SisältöValmista levytesti

Valmista taulukon yhteenveto

Valmistele arkkitietokanta

Valmistellaan tietokanta

Lisää kysymyksiä, vaihtoehtoja ja oikea vastaus Tietokanta-arkille

Tehdään siitä toimiva

Kopioi tämä komentosarja uuteen moduuliin makrokäyttöisessä työkirjassa.

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

Kopioi tämä komentosarja Test-taulukon koodiikkunaan

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

Kopioi tämä komentosarja ThisWorkook-koodiikkunaan

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

Miten tämä toimii?

Kun käyttäjä avaa työkirjan, makro piilottaa taulukot "Tietokanta" ja "Yhteenveto". Jos tietokantaa ei ole piilotettu käyttäjältä, kaikki vastaukset näkyvät. Opiskelijan ei myöskään tarvitse nähdä Yhteenveto-taulukkoa. Ennen työkirjan lähettämistä käyttäjille on suoritettava makro "Prepare_Test", joka täyttää "Test" -arkin. Käyttäjät voivat valita minkä tahansa vaihtoehdon ja makro korostaa valitun vastauksen keltaisella. Makro "Show_Result" vertaa arkin "Test" valittuja vaihtoehtoja taulukon "Database" vastauksiin ja tunnistaa oikeiden vastausten määrän.

Eikö Sheets ole piilotettu?

VBA-komentosarja ei voi ilmoittaa vioittuneen Excel-laskentataulukon ominaisuuksista. Siinä tapauksessa, palauttaa Excel laskentataulukko ja suorita makro uudelleen.

Tekijän esittely:

Nick Vipond on tietojen palauttamisen asiantuntija DataNumen, Inc., joka on maailman johtava tietojen palautustekniikoissa, mukaan lukien vahingoittunut Word ja Outlook-palautusohjelmistotuotteet. Lisätietoja osoitteessa www.datanumen.com

Kommenttien lisääminen on estetty.