EXCEL VBA İLE KLASİK SORU OLUŞTURMA

 

1-UserForm Tasarımı:

Toolbox'tan Label, TextBox, CommandButton ve ProgressBar gibi kontrolleri sürükleyip UserForm'unuza ekleyin.

Örneğin:

Bir Label için Soru:

Bir TextBox kullanıcıdan cevap almak için

Bir CommandButton ile cevabı kontrol etmek için

2-Kod Ekleme:

UserForm'unuzun kod kısmına aşağıdaki VBA kodlarını ekleyin:


Dim sorular As Variant
Dim cevaplar As Variant
Dim dogruCevap As String
Dim soruIndex As Integer
Dim dogruSayisi As Integer

Private Sub UserForm_Initialize()
    ' Soruları ve cevapları tanımla
    sorular = Array("Türkiye'nin başkenti neresidir?", "Dünya'nın en büyük okyanusu hangisidir?", "Pi sayısı yaklaşık olarak kaçtır?", _
                    "Ay'daki en yüksek dağın adı nedir?", "En küçük asal sayı nedir?", "Yılın kaç günü vardır?", _
                    "Güneş Sistemi'ndeki en büyük gezegen hangisidir?", "İnsan vücudundaki en büyük organ nedir?", "Kaç kıta vardır?", _
                    "Bir düzinede kaç tane vardır?")
    cevaplar = Array("Ankara", "Pasifik", "3.14", "Mons Huygens", "2", "365", "Jüpiter", "Cilt", "7", "12")

    soruIndex = 0
    dogruSayisi = 0

    ' İlk soruyu göster
    Me.Label1.Caption = sorular(soruIndex)
    dogruCevap = cevaplar(soruIndex)
End Sub

Private Sub CommandButton1_Click()
    Dim kullaniciCevap As String
    kullaniciCevap = Me.TextBox1.Text

    If StrComp(kullaniciCevap, dogruCevap, vbTextCompare) = 0 Then
        MsgBox "Doğru!", vbInformation
        dogruSayisi = dogruSayisi + 1
    Else
        MsgBox "Yanlış. Doğru cevap: " & dogruCevap, vbExclamation
    End If

    ' Bir sonraki soruya geç
    soruIndex = soruIndex + 1

    If soruIndex < UBound(sorular) + 1 Then
        Me.Label1.Caption = sorular(soruIndex)
        dogruCevap = cevaplar(soruIndex)
        Me.TextBox1.Text = ""
    Else
        MsgBox "Test tamamlandı! Toplam doğru cevap sayınız: " & dogruSayisi, vbInformation
        Unload Me
    End If
End Sub

Bu kod, UserForm yüklendiğinde 10 soruyu sırayla kullanıcıya gösterir. Kullanıcı her soruya cevap verdikten sonra, doğru veya yanlış olduğunu belirten bir mesaj kutusu gösterir ve bir sonraki soruya geçer. Son soru yanıtlandığında, toplam doğru cevap sayısı kullanıcıya bildirilir.

Yorum Gönder

DT KARİYER KPSS Dünyasına Hoş Geldiniz
Sevgili dostum nasıl yardımcı olabilirim?
Bu alana yazınız...