0% found this document useful (0 votes)
21 views3 pages

Form Produk

The document contains code for a form in Excel VBA that allows users to add, update, and delete product data. The form validates fields, adds new records to a sheet, and searches for records to update based on an ID. It also includes code to populate drop down lists and retrieve data for display in the form.

Uploaded by

arsy bugara
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as TXT, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
21 views3 pages

Form Produk

The document contains code for a form in Excel VBA that allows users to add, update, and delete product data. The form validates fields, adds new records to a sheet, and searches for records to update based on an ID. It also includes code to populate drop down lists and retrieve data for display in the form.

Uploaded by

arsy bugara
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as TXT, PDF, TXT or read online on Scribd
You are on page 1/ 3

--------------------------------------------

EXCEL & VBA TUTORIAL : FORM PRODUK


--------------------------------------------
Option Explicit

Private Sub CMDADD_Click()


Dim DBPRODUK As Object
Set DBPRODUK = Sheet2.Range("A100000").End(xlUp)

If Me.TXTIDPRODUK.value = "" _
Or Me.TXTNAMAPRODUK.value = "" _
Or Me.CBBAHAN.value = "" _
Or Me.CBSATUAN.value = "" _
Or Me.TXTHARGA.value = "" Then

Call MsgBox("Harap isi data Customer", vbInformation, "Customer")


Else
DBPRODUK.Offset(1, 0).value = "=ROW()-ROW($A$5)"
DBPRODUK.Offset(1, 1).value = Me.TXTIDPRODUK.value
DBPRODUK.Offset(1, 2).value = Me.TXTNAMAPRODUK.value
DBPRODUK.Offset(1, 3).value = Me.CBBAHAN.value
DBPRODUK.Offset(1, 4).value = Me.CBSATUAN.value
DBPRODUK.Offset(1, 5).value = Me.TXTHARGA.value
DBPRODUK.Offset(1, 5).value = CDec(DBPRODUK.Offset(1, 5).value)
Call AMBILDATA
Call MsgBox("Supplier berhasil ditambah", vbInformation, "User")
Me.TXTIDPRODUK.value = ""
Me.TXTNAMAPRODUK.value = ""
Me.CBBAHAN.value = ""
Me.CBSATUAN.value = ""
Me.TXTHARGA.value = ""
End If

End Sub

Private Sub CMDCUSTOMER_Click()


FORMCUSTOMER.Show
End Sub

Private Sub CMDDELETE_Click()


If Me.TXTNOMOR.value = "" Then
Call MsgBox("Pilih data pada tabel data", vbInformation, "Hapus Data")
Else
'Membuat pesan konfirmasi hapus data
Select Case MsgBox("Anda akan menghapus data" _
& vbCrLf & "Apakah anda yakin?" _
, vbYesNo Or vbQuestion Or vbDefaultButton1, "Hapus data")
Case vbNo
Exit Sub
Case vbYes
End Select
Me.TXTIDPRODUK.value = ""
Me.TXTNAMAPRODUK.value = ""
Me.CBBAHAN.value = ""
Me.CBSATUAN.value = ""
Me.TXTHARGA.value = ""
Me.TXTNOMOR.value = ""
Me.TABELDATA.value = ""
Me.CMDADD.Enabled = True
Sheet2.Select
Selection.EntireRow.Delete
Call AMBILDATA
Call MsgBox("Data berhasil dihapus", vbInformation, "Hapus Data")
End If
Sheet2.Select

End Sub

Private Sub CMDRESET_Click()


Me.TXTIDPRODUK.value = ""
Me.TXTNAMAPRODUK.value = ""
Me.CBBAHAN.value = ""
Me.CBSATUAN.value = ""
Me.TXTHARGA.value = ""
Me.TXTNOMOR.value = ""
Me.TABELDATA.value = ""
Me.CMDADD.Enabled = True
End Sub

Private Sub CMDUPDATE_Click()


Dim DBPRODUK As Object
Set DBPRODUK = Sheet2.Range("A6:A100000").Find(What:=Me.TXTNOMOR.value,
LookIn:=xlValues)

If Me.TXTNOMOR.value = "" Then


Call MsgBox("Harap pilih data terlebih dahulu", vbInformation, "Update produk")
Else
DBPRODUK.Offset(0, 1).value = Me.TXTIDPRODUK.value
DBPRODUK.Offset(0, 2).value = Me.TXTNAMAPRODUK.value
DBPRODUK.Offset(0, 3).value = Me.CBBAHAN.value
DBPRODUK.Offset(0, 4).value = Me.CBSATUAN.value
DBPRODUK.Offset(0, 5).value = Me.TXTHARGA.value
DBPRODUK.Offset(0, 5).value = CDec(DBPRODUK.Offset(0, 5).value)
Call AMBILDATA
Call MsgBox("Produk berhasil diupdate", vbInformation, "Update produk")
Me.TXTIDPRODUK.value = ""
Me.TXTNAMAPRODUK.value = ""
Me.CBBAHAN.value = ""
Me.CBSATUAN.value = ""
Me.TXTHARGA.value = ""
Me.TXTNOMOR.value = ""
Me.TABELDATA.value = ""
Me.CMDADD.Enabled = True

End If

End Sub

Private Sub TABELDATA_DblClick(ByVal Cancel As MSForms.ReturnBoolean)


On Error GoTo EXCELVBA
Dim SumberData, CELLAKTIF As Long
Me.TXTNOMOR.value = Me.TABELDATA.value
Me.TXTIDPRODUK.value = Me.TABELDATA.Column(1)
Me.TXTNAMAPRODUK.value = Me.TABELDATA.Column(2)
Me.CBBAHAN.value = Me.TABELDATA.Column(3)
Me.CBSATUAN.value = Me.TABELDATA.Column(4)
Me.TXTHARGA.value = Me.TABELDATA.Column(5)
Me.CMDADD.Enabled = False

Sheet2.Select
SumberData = Sheets("PRODUK").Cells(Rows.Count, "A").End(xlUp).Row
Sheets("PRODUK").Range("A6:A" & SumberData).Find(What:=Me.TXTNOMOR.value,
LookIn:=xlValues, lookAt:=xlWhole).Activate
CELLAKTIF = ActiveCell.Row
Sheet2.Select
Exit Sub
EXCELVBA:
Call MsgBox("Pilih data pada tabel data", vbInformation, "Pilih Data")

End Sub

Private Sub TXTHARGA_Change()


On Error Resume Next
Me.TXTHARGA.value = Format(Me.TXTHARGA.value, "Rp #,###")
End Sub

Private Sub UserForm_Initialize()


Me.BackColor = RGB(16, 21, 47)
Call AMBILDATA
With CBSATUAN
.AddItem "Meter Persegi"
.AddItem "Buah"
.AddItem "Lembar"
End With
With CBBAHAN
.AddItem "Flexi Jerman"
.AddItem "Flexi China"
.AddItem "Flexi Korea"
.AddItem "Albatros"
.AddItem "Luster"
.AddItem "Easy Banner"
.AddItem "Poly A"
.AddItem "Poly B"
End With
End Sub

Private Sub AMBILDATA()


Dim DBPRODUK As Long
Dim irow As Long
irow = Sheet2.Range("A" & Rows.Count).End(xlUp).Row
DBPRODUK = Application.WorksheetFunction.CountA(Sheet2.Range("A6:A900000"))
If DBPRODUK = 0 Then
Me.TABELDATA.RowSource = ""
Else
Me.TABELDATA.RowSource = "PRODUK!A6:F" & irow
End If
End Sub

You might also like