Perintah Untuk ChatGPT:
buatkan script VBA excel untuk form input data dengan
tombol simpan, hapus, update di tabel excel dengan kolom Nama, Alamat, Tanggal
Lahir, Jenis Kelamin ChatGPT
Hasil:
Berikut adalah script VBA untuk membuat form
input data dengan tombol Simpan, Hapus, dan Update di Excel. Script ini
menciptakan sebuah UserForm dengan beberapa TextBox dan ComboBox untuk input
data, serta tiga CommandButton untuk fungsi Simpan, Hapus, dan Update.
- Buat UserForm di Excel:
- Buka Excel dan tekan ALT +
F11 untuk membuka VBA editor.
- Pilih Insert > UserForm untuk membuat UserForm baru.
- Tambahkan kontrol berikut ke UserForm:
- Label dan TextBox untuk Nama
- Label dan TextBox untuk Alamat
- Label dan TextBox untuk Tanggal
Lahir
- Label dan ComboBox untuk Jenis
Kelamin
- CommandButton untuk Simpan
- CommandButton untuk Hapus
- CommandButton untuk Update
- Tambahkan kode VBA di UserForm:
Private Sub
CommandButtonSimpan_Click()
Dim ws As Worksheet
Set ws =
ThisWorkbook.Sheets("Sheet1")
Dim lastRow As Long
lastRow = ws.Cells(ws.Rows.Count,
1).End(xlUp).Row + 1
ws.Cells(lastRow, 1).Value =
Me.TextBoxNama.Value
ws.Cells(lastRow, 2).Value =
Me.TextBoxAlamat.Value
ws.Cells(lastRow, 3).Value =
Me.TextBoxTanggalLahir.Value
ws.Cells(lastRow, 4).Value =
Me.ComboBoxJenisKelamin.Value
MsgBox "Data berhasil disimpan"
ClearForm
End Sub
Private Sub
CommandButtonHapus_Click()
Dim ws As Worksheet
Set ws =
ThisWorkbook.Sheets("Sheet1")
Dim selectedRow As Long
selectedRow = Me.ListBoxData.ListIndex + 2
If selectedRow > 1 Then
ws.Rows(selectedRow).Delete
MsgBox "Data berhasil
dihapus"
LoadData
Else
MsgBox "Pilih data yang akan
dihapus"
End If
End Sub
Private Sub
CommandButtonUpdate_Click()
Dim ws As Worksheet
Set ws =
ThisWorkbook.Sheets("Sheet1")
Dim selectedRow As Long
selectedRow = Me.ListBoxData.ListIndex + 2
If selectedRow > 1 Then
ws.Cells(selectedRow, 1).Value =
Me.TextBoxNama.Value
ws.Cells(selectedRow, 2).Value =
Me.TextBoxAlamat.Value
ws.Cells(selectedRow, 3).Value =
Me.TextBoxTanggalLahir.Value
ws.Cells(selectedRow, 4).Value =
Me.ComboBoxJenisKelamin.Value
MsgBox "Data berhasil
diupdate"
LoadData
Else
MsgBox "Pilih data yang akan
diupdate"
End If
End Sub
Private Sub
UserForm_Initialize()
Me.ComboBoxJenisKelamin.AddItem
"Laki-laki"
Me.ComboBoxJenisKelamin.AddItem
"Perempuan"
LoadData
End Sub
Private Sub
LoadData()
Dim ws As Worksheet
Set ws =
ThisWorkbook.Sheets("Sheet1")
Dim i As Long
Me.ListBoxData.Clear
For i = 2 To ws.Cells(ws.Rows.Count,
1).End(xlUp).Row
Me.ListBoxData.AddItem ws.Cells(i,
1).Value
Me.ListBoxData.List(Me.ListBoxData.ListCount - 1, 1) = ws.Cells(i,
2).Value
Me.ListBoxData.List(Me.ListBoxData.ListCount - 1, 2) = ws.Cells(i,
3).Value
Me.ListBoxData.List(Me.ListBoxData.ListCount - 1, 3) = ws.Cells(i,
4).Value
Next i
End Sub
Private Sub
ListBoxData_Click()
Dim selectedRow As Long
selectedRow = Me.ListBoxData.ListIndex + 2
Dim ws As Worksheet
Set ws =
ThisWorkbook.Sheets("Sheet1")
Me.TextBoxNama.Value =
ws.Cells(selectedRow, 1).Value
Me.TextBoxAlamat.Value =
ws.Cells(selectedRow, 2).Value
Me.TextBoxTanggalLahir.Value =
ws.Cells(selectedRow, 3).Value
Me.ComboBoxJenisKelamin.Value =
ws.Cells(selectedRow, 4).Value
End Sub
Private Sub
ClearForm()
Me.TextBoxNama.Value = ""
Me.TextBoxAlamat.Value = ""
Me.TextBoxTanggalLahir.Value = ""
Me.ComboBoxJenisKelamin.Value =
""
End Sub
- Buat Tabel di Sheet1:
- Di Sheet1, buat header untuk tabel dengan kolom Nama, Alamat, Tanggal Lahir, dan
Jenis Kelamin.
- Jalankan UserForm:
- Kembali ke VBA editor, buat module baru dan tambahkan kode berikut
untuk menampilkan UserForm:
Sub
ShowForm()
UserForm1.Show
End Sub
- Jalankan macro ShowForm dari Excel untuk menampilkan UserForm.
Dengan script ini, Anda dapat memasukkan data,
menyimpannya, menghapus, dan memperbarui data di tabel Excel melalui UserForm.
0 komentar:
Posting Komentar