You are on page 1of 4

CODING FORM JABATAN

Option Explicit

Private Sub CMDSimpan_Click()

Dim DJabatan As Object

Set DJabatan = Sheet2.Range("A20000").End(xlUp)

If Me.CMDSimpan.Caption = "Save" Then

If Me.TXTNamaJabatan.Value = "" _

Or Me.TXTGajiPokok.Value = "" _

Or Me.TXTTunjangan1.Value = "" _

Or Me.TXTTunjangan2.Value = "" _

Or Me.TXTTunjangan3.Value = "" _

Or Me.TXTTunjangan4.Value = "" Then

Call MsgBox("Harap isi data jabatan dengan lengkap", vbInformation, "Data Jabatan")

Else

DJabatan.Offset(1, 0).Value = "=ROW()-ROW($A$4)"

DJabatan.Offset(1, 1).Value = Me.TXTNamaJabatan.Value

DJabatan.Offset(1, 2).Value = Me.TXTGajiPokok.Value

DJabatan.Offset(1, 3).Value = Me.TXTTunjangan1.Value

DJabatan.Offset(1, 4).Value = Me.TXTTunjangan2.Value

DJabatan.Offset(1, 5).Value = Me.TXTTunjangan3.Value

DJabatan.Offset(1, 6).Value = Me.TXTTunjangan4.Value

DJabatan.Offset(1, 7).Value = Me.TXTTOTALGAJI.Value

Call AmbilJabatan

Call MsgBox("Data Jabatan berhasil ditambah", vbInformation, "Jabatan")

Me.TXTNamaJabatan.Value = ""

Me.TXTGajiPokok.Value = ""

Me.TXTTunjangan1.Value = ""

Me.TXTTunjangan2.Value = ""
Me.TXTTunjangan3.Value = ""

Me.TXTTunjangan4.Value = ""

Me.TXTTOTALGAJI.Value = ""

End If

Else

Call UpdateJabatan

End If

End Sub

Private Sub UpdateJabatan()

Application.ScreenUpdating = False

'Perintah membuat Sumber data yang diubah

Dim UbahData As Object

Set UbahData = Sheet2.Range("A5:A1000000").Find(What:=FORMTABELJABATAN.TXTNOMOR.Value,


LookIn:=xlValues)

'Perintah mengecek apakah ada data yang diubah

FORMTABELJABATAN.TabelData.Value = ""

'Perintah mengubah data dari kolom pertama

UbahData.Offset(0, 1).Value = Me.TXTNamaJabatan.Value

UbahData.Offset(0, 2).Value = Me.TXTGajiPokok.Value

UbahData.Offset(0, 3).Value = Me.TXTTunjangan1.Value

UbahData.Offset(0, 4).Value = Me.TXTTunjangan2.Value

UbahData.Offset(0, 5).Value = Me.TXTTunjangan3.Value

UbahData.Offset(0, 6).Value = Me.TXTTunjangan4.Value

UbahData.Offset(0, 7).Value = Me.TXTTOTALGAJI.Value

'Perintah memunculkan pesan bahwa data berhasil diubah

Call MsgBox("Data berhasil diubah", vbInformation, "Ubah Data")

'Perintah membersihkan textbox

Me.TXTNamaJabatan.Value = ""

Me.TXTGajiPokok.Value = ""

Me.TXTTunjangan1.Value = ""

Me.TXTTunjangan2.Value = ""
Me.TXTTunjangan3.Value = ""

Me.TXTTunjangan4.Value = ""

Me.TXTTOTALGAJI.Value = ""

End Sub

Private Sub TXTGajiPokok_Change()

On Error Resume Next

Me.TXTTOTALGAJI.Value = Val(Me.TXTGajiPokok.Value) + Val(Me.TXTTunjangan1.Value) +


Val(Me.TXTTunjangan2.Value) + Val(Me.TXTTunjangan3.Value) + Val(Me.TXTTunjangan4.Value)

End Sub

Private Sub TXTTunjangan1_Change()

On Error Resume Next

Me.TXTTOTALGAJI.Value = Val(Me.TXTGajiPokok.Value) + Val(Me.TXTTunjangan1.Value) +


Val(Me.TXTTunjangan2.Value) + Val(Me.TXTTunjangan3.Value) + Val(Me.TXTTunjangan4.Value)

End Sub

Private Sub TXTTunjangan2_Change()

On Error Resume Next

Me.TXTTOTALGAJI.Value = Val(Me.TXTGajiPokok.Value) + Val(Me.TXTTunjangan1.Value) +


Val(Me.TXTTunjangan2.Value) + Val(Me.TXTTunjangan3.Value) + Val(Me.TXTTunjangan4.Value)

End Sub

Private Sub TXTTunjangan3_Change()

On Error Resume Next

Me.TXTTOTALGAJI.Value = Val(Me.TXTGajiPokok.Value) + Val(Me.TXTTunjangan1.Value) +


Val(Me.TXTTunjangan2.Value) + Val(Me.TXTTunjangan3.Value) + Val(Me.TXTTunjangan4.Value)

End Sub
Private Sub TXTTunjangan4_Change()

On Error Resume Next

Me.TXTTOTALGAJI.Value = Val(Me.TXTGajiPokok.Value) + Val(Me.TXTTunjangan1.Value) +


Val(Me.TXTTunjangan2.Value) + Val(Me.TXTTunjangan3.Value) + Val(Me.TXTTunjangan4.Value)

End Sub

Private Sub UserForm_Initialize()

Me.BackColor = RGB(104, 82, 200)

End Sub

Private Sub AmbilJabatan()

Dim DJabatan As Long

Dim irow As Long

irow = Sheet2.Range("A" & Rows.Count).End(xlUp).Row

DJabatan = Application.WorksheetFunction.CountA(Sheet2.Range("A5:A90000"))

If DJabatan = 0 Then

FORMTABELJABATAN.TabelData.RowSource = ""

Else

FORMTABELJABATAN.TabelData.RowSource = "DATAJABATAN!A5:H" & irow

End If

End Sub

You might also like