Mohon bantuan MsgBox

  1. 6 tahun lalu

    Halo Abang dan Nona Master semua, mau tanya nih:
    saya punya Button pencarian data siswa, sbb:

    Private Sub BtnCariData_Click()
    On Error Resume Next
    Dim Ws As Worksheet
    Dim Kode, Cari As Variant
    Dim Baris As Long
    Set Ws = Worksheets("PusatDataSiswa")
    Kode = Me.txtNoSiswa.Text
    With Ws.Range("B3:B10")
    Set Cari = .Find(Kode, LookAt:=xlWhole)
    If Not Cari Is Nothing Then
    Baris = Cari.Row
        With Form1
            .txtNoSiswa.Value = Ws.Cells(Baris, 2).Value
            .txtNamaSiswa.Value = Ws.Cells(Baris, 3).Value
            .cmbWali.Value = Ws.Cells(Baris, 4).Value
            If Ws.Cells(Baris, 5).Value = "Pria" Then opbPria.Value = True:
            If Ws.Cells(Baris, 5).Value = "Wanita" Then opbWanita.Value = True:
            .txtAlamatAsal.Value = Ws.Cells(Baris, 6).Value
            .txtNomorHP.Value = Ws.Cells(Baris, 7).Value
        End With
        End If
    End With
    End Sub

    Ketika data nomor siswa yang dicari tidak ada, saya ingin memasukkan pesan berikut:

    MsgBox "Data yang anda cari tidak ada"

    dimanakah saya harus memasukkan pesan tersebut?

    thanxs

    Coba modifikasi pada baris terkahir menjadi:

    Private Sub BtnCariData_Click()
        Dim Ws As Worksheet
        Dim Kode, Cari As Variant
        Dim Baris As Long
        
        On Error Resume Next
        
        Set Ws = Worksheets("PusatDataSiswa")
        Kode = Me.txtNoSiswa.Text
        With Ws.Range("B3:B10")
            Set Cari = .Find(Kode, LookAt:=xlWhole)
            If Not Cari Is Nothing Then
                Baris = Cari.Row
                With Form1
                    .txtNoSiswa.Value = Ws.Cells(Baris, 2).Value
                    .txtNamaSiswa.Value = Ws.Cells(Baris, 3).Value
                    .cmbWali.Value = Ws.Cells(Baris, 4).Value
                    If Ws.Cells(Baris, 5).Value = "Pria" Then
                        opbPria.Value = True
                    ElseIf Ws.Cells(Baris, 5).Value = "Wanita" Then
                        opbWanita.Value = True
                    End If
                    .txtAlamatAsal.Value = Ws.Cells(Baris, 6).Value
                    .txtNomorHP.Value = Ws.Cells(Baris, 7).Value
                End With
            Else
                '+-- Tambahkan baris Else lalu baris di bawah ini.
                MsgBox "Data yang anda cari tidak ada"
            End If
        End With
    End Sub

    Modifikasi sedikit saja dengan menambahkan perintah Else dan Msgbox:

            ...
            Else
                '+-- Tambahkan baris Else lalu baris di bawah ini.
                MsgBox "Data yang anda cari tidak ada"
            End If
        End With
    End Sub

    Saran sedikit, ada baiknya baris-baris kode VBA-nya diformat per blok seperti yang saya gunakan (ada indentasi untuk blok IF ... END IF, blok WITH ... END WITH dan lain sebagainya). Akan dapat memudahkan mengetahui blok skripnya dan memudahkan saat akan menyisipkan atau membuang baris kode... ;)

  2. Caton

    30 Des 2017 Terverifikasi Jawaban Terpilih Indonesia + 20.101 Poin

    Coba modifikasi pada baris terkahir menjadi:

    Private Sub BtnCariData_Click()
        Dim Ws As Worksheet
        Dim Kode, Cari As Variant
        Dim Baris As Long
        
        On Error Resume Next
        
        Set Ws = Worksheets("PusatDataSiswa")
        Kode = Me.txtNoSiswa.Text
        With Ws.Range("B3:B10")
            Set Cari = .Find(Kode, LookAt:=xlWhole)
            If Not Cari Is Nothing Then
                Baris = Cari.Row
                With Form1
                    .txtNoSiswa.Value = Ws.Cells(Baris, 2).Value
                    .txtNamaSiswa.Value = Ws.Cells(Baris, 3).Value
                    .cmbWali.Value = Ws.Cells(Baris, 4).Value
                    If Ws.Cells(Baris, 5).Value = "Pria" Then
                        opbPria.Value = True
                    ElseIf Ws.Cells(Baris, 5).Value = "Wanita" Then
                        opbWanita.Value = True
                    End If
                    .txtAlamatAsal.Value = Ws.Cells(Baris, 6).Value
                    .txtNomorHP.Value = Ws.Cells(Baris, 7).Value
                End With
            Else
                '+-- Tambahkan baris Else lalu baris di bawah ini.
                MsgBox "Data yang anda cari tidak ada"
            End If
        End With
    End Sub

    Modifikasi sedikit saja dengan menambahkan perintah Else dan Msgbox:

            ...
            Else
                '+-- Tambahkan baris Else lalu baris di bawah ini.
                MsgBox "Data yang anda cari tidak ada"
            End If
        End With
    End Sub

    Saran sedikit, ada baiknya baris-baris kode VBA-nya diformat per blok seperti yang saya gunakan (ada indentasi untuk blok IF ... END IF, blok WITH ... END WITH dan lain sebagainya). Akan dapat memudahkan mengetahui blok skripnya dan memudahkan saat akan menyisipkan atau membuang baris kode... ;)

  3. Di sunting 6 tahun lalu oleh Vei-Rid

    Ok saya coba dulu ya bang Caton...

    Saran sedikit, ada baiknya baris-baris kode VBA-nya diformat per blok seperti yang saya gunakan (ada indentasi untuk blok IF ... END IF, blok WITH ... END WITH dan lain sebagainya). Akan dapat memudahkan mengetahui blok skripnya dan memudahkan saat akan menyisipkan atau membuang baris kode... ;)

    hehehe, iya master... biar rapi dan mudah dibaca ya...

  4. Modifikasi sedikit saja dengan menambahkan perintah Else dan Msgbox:

            ...
            Else
                '+-- Tambahkan baris Else lalu baris di bawah ini.
                MsgBox "Data yang anda cari tidak ada"
            End If
        End With
    End Sub

    Alhamdulillah, It's work.... :D :D :D

 

atau Mendaftar untuk ikut berdiskusi!