CRUD Form WorkSheet Range Simple

Kali ini saya buat tutorial bagaimana membuat CRUD yang simple dimana pada CRUD ini tidak mengunakan methode FIND.

Teknik pencarian data yang dilakukan pada CRUD kali ini adalah dengan memanfaatkan Listbox Index yang nantinya ini dijadikan alamat di Worksheet sebagai Index Baris.

Seperti yang sudah sering saya bahas langkah-langkah dalam setiap membuat aplikasi adalah seperti berikut ini :

Membuat Database Aplikasi

Tahap pertama yang dilakukan dalam membuat aplikasi adalah membuat database yang nantinya datanya ini akan diinput melalui Userform

Setelah database telah dibuat, selanjutnya buat Userform sesuai isian yang ada pada database

Membuat UserForm

Coding

coding module

Sub Urutkan()
For i = 2 To HitungBaris
    Sheet1.Range("A" & i).Value = i - 1
Next
End Sub

Function HitungBaris()
HitungBaris = Sheet1.Range("B" & Rows.Count).End(xlUp).Row
End Function

Script pada Userorm

Private Sub Btn_Delete_Click()
'Delete
Dim Pesan As VbMsgBoxResult      'Enumeration Integer

If Txt_Nama.Text = vbNullString Then Exit Sub
Pesan = MsgBox("Apakah Datanya mau di hapus?", vbYesNo + vbQuestion)
If Pesan = vbNo Then Exit Sub
Sheet1.Range("A" & Txt_No.Text + 1).EntireRow.Delete '<-- intiny ini saja

Call HapusInputan
Urutkan
MsgBox "Data Sudah Berhasil dihapus!", vbInformation
End Sub

Private Sub Btn_Edit_Click()
Dim JK As String
Dim Baris As Long

Baris = Txt_Nama.Tag + 2   '<---1 baris yg membedakan antra edit / simpan
If OP_Laki.Value = True Then
    JK = "Laki-laki"
Else
    JK = "Perempuan"
End If
Sheet1.Range("A" & Baris).Value = Txt_No.Text
Sheet1.Range("B" & Baris).Value = Txt_Nama.Text
Sheet1.Range("C" & Baris).Value = Txt_Alamat.Text
Sheet1.Range("D" & Baris).Value = JK
Sheet1.Range("E" & Baris).Value = CB_Jurusan.Text

Call HapusInputan
MsgBox "Data Sudah Berhasil diEdit!", vbInformation
End Sub

Private Sub Btn_Simpan_Click()
Dim JK As String
Dim Baris As Long
If cekKosong Then Exit Sub
Baris = HitungBaris + 1
'Create
If OP_Laki.Value = True Then
    JK = "Laki-laki"
Else
    JK = "Perempuan"
End If

Sheet1.Range("A" & Baris).Value = Txt_No.Text
Sheet1.Range("B" & Baris).Value = Txt_Nama.Text
Sheet1.Range("C" & Baris).Value = Txt_Alamat.Text
Sheet1.Range("D" & Baris).Value = JK
Sheet1.Range("E" & Baris).Value = CB_Jurusan.Text

Call HapusInputan
MsgBox "Data Sudah Berhasil disimpan!", vbInformation

Call IsiLisbox
End Sub

Private Sub LB_Data_DblClick(ByVal Cancel As MSForms.ReturnBoolean)
Txt_No.Text = LB_Data.Column(0)
Txt_Nama.Tag = LB_Data.ListIndex
Txt_Nama.Text = LB_Data.Column(1)
Txt_Alamat.Text = LB_Data.Column(2)

If LB_Data.Column(3) = "Perempuan" Then
    OP_Perempuan.Value = True
Else
    OP_Laki.Value = True
End If

CB_Jurusan.Text = LB_Data.Column(4)
End Sub

Private Sub UserForm_Initialize()
CB_Jurusan.List = Array("Matematika", "B. Inggris", "B. Indonesia")
Call IsiLisbox
Call HapusInputan
Txt_Nama.SetFocus
End Sub

Sub IsiLisbox()
LB_Data.RowSource = "Database!A2:E" & HitungBaris
End Sub

Sub HapusInputan()
Txt_No.Text = HitungBaris
Txt_Nama.Text = vbNullString
Txt_Alamat.Text = vbNullString
OP_Laki.Value = False
OP_Perempuan.Value = False
CB_Jurusan.Text = vbNullString
End Sub

Function cekKosong() As Boolean
If Txt_Nama.Text = vbNullString Then
    Txt_Nama.SetFocus
    MsgBox "Nama tidak boleh Kosong"
    cekKosong = True
ElseIf Txt_Alamat = vbNullString Then
    Txt_Alamat.SetFocus
    MsgBox "Alamat tidak boleh Kosong"
    cekKosong = True
ElseIf OP_Laki.Value = False And OP_Perempuan.Value = False Then
    MsgBox "Jenis Kelamin tidak boleh Kosong"
    cekKosong = True
ElseIf CB_Jurusan.Text = vbNullString Then
    CB_Jurusan.SetFocus
    MsgBox "Jurusan tidak boleh Kosong"
    cekKosong = True
Else
    cekKosong = False
End If
End Function

Untuk penjelasan lebih detail, silahkan simak video tutorialnya

File Download :

Leave a Reply

Your email address will not be published. Required fields are marked *

Tutorial Lainnya
Chat WhatsApp
WhatsApp