• Logika Sederhana Untuk Mengulang Tampilan Jendela InputBox Hingga Kondisi Terpenuhi

    Loop InputBox Konsep pengulangan yang tertulis di judul artikel ini hampir memiliki kemiripan dengan fungsi Loop seperti For...Next, akan tetapi pada tutorial yang akan kita bahas kali ini, pengulangan akan terus terjadi sampai dengan batas waktu yang tak terhingga, artinya ia hanya akan berhenti ketika kondisi sudah terpenuhi (infinity loop).

    Kondisi yang dapat menghentikan proses pengulangan ini tentu saja terserah masing-masing individu, mau berdasarkan apa dan bagaimana bentuk serta jenis nilainya, semuanya tergantung kebutuhan pengguna.

    Namun untuk tutorial ini, saya akan membatasi kondisi yang berasal dari nilai-nilai yang terdapat di dalam lembar kerja sehingga nantinya anda dapat lebih mudah memahami dan tentu saja dapat memperoleh gambaran akan kegunaannya nanti. Dan karena tutorial ini saya usung dari beberapa konsep yang hampir serupa dengan tutorial yang pernah saya bahas di situs xcelive, maka ada baiknya anda memahami dan baca tutorial pendukung seperti berikut
    Bekerja dengan Jendela InputBox di excel
    Menggunakan parameter Loop For...Next untuk mencari sebuah nilai
    Menuliskan formula dengan bahasa Macro VBA
    Menggunakan Logika IF dalam Macro VBA Excel

    Oke, saatnya kita menyiapkan beberapa nilai yang akan kita jadikan sebagai 'jawaban' yang harus dipenuhi oleh pengguna ketika mengetikkan ke dalam jendela InputBox. Dengan kata lain... 'jawaban' inilah nanti yang akan mempengaruhi pengulangan dari munculnya jendela InputBox - ketika pengguna menuliskan jawaban yang salah.

    Dan seperti yang sudah saya singgung di atas guna mempermudah dalam memahami tutorial ini, kondisi (jawaban) saya letakkan di lembar kerja, tepatnya di kolom A seperti tampilan berikut.
    membuat jawaban untuk isian InputBox

    Langkah selanjutnya adalah membuat jendela InputBox yang harus dibuat menggunakan kode Macro VBA yang diawali dengan mengaktifkan jendela Microsoft Visual Basic Editor yang bisa diakses menggunakan tombol Alt+F11 di keyboard anda.
    Selanjutnya adalah membuat sebuah module baru yang digunakan sebagai wadah dari bahasa-bahasa kode VBA untuk menampung perintah sesuai dengan penjelasan di atas, dan berikut ini script kodenya:
    Sub JawabIni()
    Dim i As String
    On Error GoTo a
    tanya = Application.InputBox("Bagaimana isi tutorial di excelive.com", "Survey")
    If tanya = "" Or tanya = 0 Then Exit Sub
    i = Application.WorksheetFunction.Match(tanya, Range("A:A"), 0)
    If i > 0 Then
        MsgBox "Terimakasih atas feedback anda" 
        Exit Sub
        Else
        Exit Sub
    End If
    
    a:
    myinput = Application.InputBox("Silahkan coba lagi" & vbCr & "jawabannya apa .....!")
    If myinput = "" Or myinput = 0 Then Exit Sub
    If Err.Number > 0 Then
    Resume
    Else
    i = Application.WorksheetFunction.Match(myinput, Range("A:A"), 0)
    If i > 0 Then
        MsgBox "Terimakasih atas feedback anda"
        Exit Sub
        Else
        Exit Sub
    End If
    End If
    End Sub
    Penjelasan singkat baris-baris kode di atas adalah sebagai berikut:
    1. On Error Goto a
      adalah sebuah kondisi awal yang harus dipenuhi bahwa jika jawaban yang di input ternyata salah maka, baris kode a akan dieksekusi, sementara jika benar maka perintah ini akan diabaikan
    2. tanya
      sebuah baris perintah untuk memanggil jendela inputbox dengan isi pesan "Bagaimana isi tutorial di excelive.com". Jendela ini juga mempunyai nama atau judul "survey".
    3. If tanya = .....
      Sebuah logika sederhana yang berfungsi untuk menutup semua rangkaian kode ini jika kotak isian berisi 0 atau kosong, atau jika pengguna menekan tombol X
    4. i = ...
      Sebuah nilai yang berisi formula MATCH yang saya fungsikan untuk melihat apakah nilai yang diinput melalui kotak InputBox cocok dengan nilai-nilai yang ada di rentang sel A1 hingga A5
    5. If i > 0
      Logika sederhana untuk mendeteksi jika nilai i ada yang sesuai
    6. MsgBox "Terimakasih..."
      Sebuah informasi yang menunjukkan bahwa jawaban sudah sesuai dengan yang diharapkan
    7. Exit Sub
      Bertugas untuk menghentikan proses pembacaan sebuah prosedur atau module
    8. a:
      Sebuah statement atau baris tujuan (destination list) yang akan dijalankan jika nilai yang dimasukkan di inputBox tidak cocok dengan nilai-nilai yang ada di dalam lembar kerja
      Sebagian besar isi dari statement a: memiliki kesamaan dengan kode inti sebelumnya, hanya saya ada 2 buah baris kode yang saya sematkan dalam statement a: yakni
      • If Err.Number > 0
        Logika ini berfungsi untuk mengecek jika ternyata hasil formula MATCH menghasilkan nilai Error #N/A. Logika ini bisa dikatakan memiliki kemiripan dengan fungsi IFERROR.
      • Resume
        Adalah sebuah statement utama dalam tutorial ini yang memiliki fungsi untuk mengulangi statement atau baris yang menyebabkan kesalahan, dalam hal ini adalah statement a:
    Silahkan anda coba pahami cara kerja dari tutorial ini lewat tampilan hasil akhir yang sudah saya siapkan berikut
    cara menggunakan statement resume

    Semoga tutorial yang cukup singkat ini dapat menambah perbendaharaan materi serta meningkatkan kemampuan Microsoft Excel Anda.
    Jika ada pertanyaan seputar tutorial mengulang tampilan jendela InputBox hingga sebuah kondisi tertentu terpenuhi, silahkan tulis di kolom komentar atau silahkan anda hubungi kami disini. Dan jangan lupa untuk bookmark situs kami agar anda lebih mudah mengunjunginya lain waktu. Gracias

    Artikel Terkait

  • Still haven't found what are you looking for

    We have provided a complete list of articles on this site to make it easier for you and giving the best solution for your excel issues

    VISIT LINK
    DMCA.com Protection Status

    excelive.com
    is a blogger resources site who provides best excel tutorial based on daily needs. The main mission of excelive is to share our little experience in excel to deliver best time killer for your excel issues.
    T.O.S
    Term of service

    Read More
    Download Area
    to complete all excel lessons, we have provided a download link for you Find Here
    Copyright © 2016 - excelive.com. Some rights reserved.
    Menyalin sebagian atau keseluruhan materi situs hanya diperbolehkan dengan tautan balik terbuka ke sumbernya.
    equipped with by blogger