Contoh LJK Pilihan Ganda Otomatis di Excel dengan VBA: Praktis dan Presisi

oleh | 10 Mei 2025 | VBA Macro | 0 Komentar

Lembar Jawaban Komputer (LJK) merupakan bagian penting dalam pelaksanaan ujian berbasis pilihan ganda. Biasanya, contoh LJK pilihan ganda banyak ditemukan dalam bentuk cetakan atau aplikasi scanner, tetapi tahukah Anda bahwa kita juga bisa membuatnya secara otomatis di Microsoft Excel dengan bantuan VBA Macro?

Artikel ini akan membahas secara lengkap bagaimana membuat contoh LJK pilihan ganda yang rapi, presisi, dan siap cetak hanya dengan satu klik tombol makro. Ini sangat cocok untuk guru, dosen, maupun panitia ujian yang ingin membuat format LJK yang efisien tanpa perlu desain grafis.

Mengapa Menggunakan Excel untuk LJK?

Menggunakan Excel untuk membuat contoh LJK pilihan ganda memberikan banyak keunggulan:

  • Fleksibel: Bisa disesuaikan jumlah soal dan pilihan jawaban.
  • Presisi tinggi: Lingkaran bisa ditempatkan dengan posisi dan ukuran yang seragam.
  • Hemat waktu: Cukup jalankan makro, ratusan nomor soal langsung tersusun otomatis.
  • Siap cetak: Dapat langsung dicetak ke dalam kertas tanpa harus mengedit secara manual.

Script VBA: Membuat Contoh LJK Pilihan Ganda Otomatis

Berikut ini adalah skrip lengkap VBA yang bisa Anda gunakan untuk membuat contoh LJK pilihan ganda secara otomatis di Excel:

Sub BuatLJK_LingkaranPresisi_Col4()
    Dim ws As Worksheet
    Set ws = ThisWorkbook.Sheets(1)

    'Bersihkan isi & shape lama
    ws.Cells.Clear
    On Error Resume Next
    ws.Shapes.SelectAll: Selection.Delete
    On Error GoTo 0

    'Atur lebar kolom 4
    ws.Columns("A:Y").ColumnWidth = 4

    Dim huruf() As String: huruf = Split("A B C D")
    Dim kolomOffset As Long, barisOffset As Long, j As Long, nomorSoal As Long
    Dim baseRow As Long, baseCol As Long
    Dim cellLeft As Double, cellTop As Double, cellW As Double, cellH As Double
    Dim shp As Shape, sizeOval As Double, leftPos As Double, topPos As Double

    'Judul
    With ws.Range("A1:Y1")
        .Merge
        .Value = "JAWABAN PILIHAN GANDA (Hitamkan salah satu pilihan jawaban yang benar)"
        .Font.Bold = True
        .Font.Size = 12
        .HorizontalAlignment = xlCenter
        .VerticalAlignment = xlCenter
    End With

    nomorSoal = 1
    sizeOval = 16 'diameter lingkaran (px)

    For kolomOffset = 0 To 4
        For barisOffset = 0 To 9
            baseRow = 3 + barisOffset * 2
            baseCol = 1 + kolomOffset * 5

            'Nomor soal
            ws.Cells(baseRow, baseCol).Value = nomorSoal
            ws.Cells(baseRow, baseCol).Font.Bold = True

            'Pilihan A-D
            For j = 0 To 3
                cellLeft = ws.Cells(baseRow, baseCol + j + 1).Left
                cellTop = ws.Cells(baseRow, baseCol + j + 1).Top
                cellW = ws.Cells(baseRow, baseCol + j + 1).Width
                cellH = ws.Cells(baseRow, baseCol + j + 1).Height

                leftPos = cellLeft + (cellW - sizeOval) / 2
                topPos = cellTop + (cellH - sizeOval) / 2

                Set shp = ws.Shapes.AddShape(msoShapeOval, leftPos, topPos, sizeOval, sizeOval)
                With shp
                    .Line.ForeColor.RGB = RGB(0, 0, 0)
                    .Fill.Visible = msoFalse
                    .TextFrame2.TextRange.Text = huruf(j)
                    .TextFrame2.HorizontalAnchor = msoAnchorCenter
                    .TextFrame2.VerticalAnchor = msoAnchorMiddle
                    .TextFrame2.TextRange.Font.Size = 9
                    .TextFrame2.TextRange.Font.Bold = msoTrue
                    .TextFrame2.TextRange.Font.Fill.ForeColor.RGB = RGB(0, 0, 0)
                End With
            Next j
            nomorSoal = nomorSoal + 1
        Next barisOffset
    Next kolomOffset

    'Sembunyikan gridlines
    ActiveWindow.DisplayGridlines = False
End Sub

Cara Menjalankan Makro Ini di Excel

Ikuti langkah-langkah berikut untuk menempatkan dan menjalankan skrip contoh LJK pilihan ganda ini:

Baca Juga  Cara Membuat Absensi Guru Excel Otomatis dengan Warna untuk Hari Libur
  1. Buka Excel, lalu tekan ALT + F11 untuk membuka jendela VBA Editor.
  2. Pilih Insert > Module, kemudian paste seluruh kode VBA di atas.
  3. Kembali ke Excel, tekan ALT + F8, pilih BuatLJK_LingkaranPresisi_Col4, lalu klik Run.
  4. Dalam sekejap, contoh LJK pilihan ganda akan muncul otomatis di Sheet1.
contoh LJK pilihan ganda

Jika Anda ingin mencetaknya, tinggal sesuaikan margin dan ukuran kertas sesuai kebutuhan.

Cocok Untuk Format Soal Apa Saja

Makro ini bisa digunakan untuk berbagai jenis format contoh LJK pilihan ganda:

  • Ujian harian
  • Ujian semester
  • Tryout atau simulasi UTBK
  • Lembar latihan siswa

Anda bisa memodifikasi jumlah soal, font, ukuran lingkaran, atau menambah kolom sesuai kebutuhan. Bahkan bisa diadaptasi untuk 5 pilihan (A–E) dengan sedikit perubahan pada array huruf.

Penutup

Dengan memanfaatkan makro Excel, kita bisa membuat contoh LJK pilihan ganda secara otomatis, efisien, dan sangat presisi. Ini menghemat banyak waktu dibandingkan membuatnya manual satu per satu. Artikel ini menunjukkan bahwa dengan sedikit pengetahuan VBA, Excel bisa menjadi alat bantu yang luar biasa untuk dunia pendidikan.

Bagikan artikel ini jika Anda merasa terbantu, dan silakan kembangkan makronya sesuai kebutuhan sekolah Anda!

Download Template Gratis

Bagi Anda yang ingin mencoba teknik ini secara langsung, kami telah menyiapkan template gratis yang dirancang khusus untuk membantu Anda mempraktikkan Contoh LJK Pilihan Ganda Otomatis di Excel dengan VBA: Praktis dan Presisi ini. File Excel bisa didownload melalui tautan berikut:

download file Excel

Atau juga jika ingin mempelajari langkah demi langkah secara visual, bisa kunjungi Youtube Channel Depot Excel. Di sana teman-teman akan melihat bagaimana rumusnya bekerja. Semoga bermanfaat!

0 Komentar

Kirim Komentar

Alamat email Anda tidak akan dipublikasikan. Ruas yang wajib ditandai *

Join Our Newsletter