0% found this document useful (0 votes)
22 views

Coding Form Jabatan

The document contains VBA code for a userform that allows users to add, update, and view job position data in Excel. The code defines form controls and procedures to validate data entry, save new records to a database sheet, update existing records, and refresh the records table. It also includes code to dynamically calculate total salary fields.

Uploaded by

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

Coding Form Jabatan

The document contains VBA code for a userform that allows users to add, update, and view job position data in Excel. The code defines form controls and procedures to validate data entry, save new records to a database sheet, update existing records, and refresh the records table. It also includes code to dynamically calculate total salary fields.

Uploaded by

HR RTM
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
You are on page 1/ 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