CODING FORM DATA SISWA
Option Explicit
Private Sub CMDADD_Click()
Dim DBSISWA As Object
Set DBSISWA = Sheet2.Range("B100000").End(xlUp)
If Me.TXTNISN.Value = "" _
Or Me.TXTNAMASISWA.Value = "" _
Or Me.CBKELAMIN.Value = "" _
Or Me.CBKELAS.Value = "" _
Or Me.CBKETERANGAN.Value = "" _
Or Me.TXTTAHUN.Value = "" _
Or Me.TXTHPORTU.Value = "" Then
Call MsgBox("Isi data barang masuk dengan lengkap", vbInformation, "Barang Masuk")
Else
DBSISWA.Offset(1, -1).Value = "=ROW()-ROW(DATASISWA!$A$4)"
DBSISWA.Offset(1, 0).Value = Me.TXTNISN.Value
DBSISWA.Offset(1, 1).Value = Me.TXTNAMASISWA.Value
DBSISWA.Offset(1, 2).Value = Me.CBKELAMIN.Value
DBSISWA.Offset(1, 3).Value = Me.CBKELAS.Value
DBSISWA.Offset(1, 4).Value = Me.CBKETERANGAN.Value
DBSISWA.Offset(1, 5).Value = Me.TXTTAHUN.Value
DBSISWA.Offset(1, 6).Value = Me.TXTHPORTU.Value
Call AmbilData
Call MsgBox("Data siswa telah disimpan", vbInformation, "Barang Masuk")
Me.TXTNISN.Value = ""
Me.TXTNAMASISWA.Value = ""
Me.CBKELAMIN.Value = ""
Me.CBKELAS.Value = ""
Me.CBKETERANGAN.Value = ""
Me.TXTTAHUN.Value = ""
Me.TXTHPORTU.Value = ""
End If
End Sub
Private Sub CMDCARI_Click()
On Error GoTo Salah
Dim iRow As Long
Dim JData As Long
Dim CARI_DATA As Object
Set CARI_DATA = Sheet2
Sheet6.Range("K4").Value = Me.CBKRITERIA.Value
Sheet6.Range("K5").Value = "*" & Me.TXTCARI.Value & "*"
CARI_DATA.Range("A4").CurrentRegion.AdvancedFilter Action:=xlFilterCopy, CriteriaRange:= _
Sheet6.Range("K4:K5"), CopyToRange:=Sheet6.Range("A4:I4"), Unique:=False
iRow = Sheet6.Range("A" & Rows.Count).End(xlUp).Row
If Application.WorksheetFunction.CountA(Sheet6.Range("A5:A60000")) = 0 Then
Me.TABELDATA.RowSource = ""
Call MsgBox("Data tidak ditemukan", vbInformation, "Cari Data")
Else
Me.TABELDATA.RowSource = "CARISISWA!A5:I" & iRow
End If
Me.TXTJUMLAH.Value = Me.TABELDATA.ListCount
Exit Sub
Salah:
Call MsgBox("Maaf Data tidak ditemukan", vbInformation, "Cari Data")
End Sub
Private Sub CMDDELETE_Click()
Application.ScreenUpdating = False
Me.TABELDATA.Value = ""
If Me.TXTNISN.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
Sheet3.Select
Selection.EntireRow.Delete
Call MsgBox("Data berhasil dihapus", vbInformation, "Hapus Data")
Me.TXTNISN.Value = ""
Me.TXTNAMASISWA.Value = ""
Me.CBKELAMIN.Value = ""
Me.CBKELAS.Value = ""
Me.CBKETERANGAN.Value = ""
Me.TXTTAHUN.Value = ""
Me.TXTHPORTU.Value = ""
Sheet1.Select
End If
End Sub
Private Sub CMDRESET_Click()
Me.TXTNISN.Value = ""
Me.TXTNAMASISWA.Value = ""
Me.CBKELAMIN.Value = ""
Me.CBKELAS.Value = ""
Me.CBKETERANGAN.Value = ""
Me.TXTTAHUN.Value = ""
Me.TXTHPORTU.Value = ""
Me.CBKRITERIA.Value = ""
Me.TXTCARI.Value = ""
Call AmbilData
Me.CMDADD.Enabled = True
End Sub
Private Sub CMDUPDATE_Click()
Application.ScreenUpdating = False
Dim BARIS As String
If Me.TXTNISN.Value = "" Then
Call MsgBox("Pilih data terlebih dahulu", vbInformation, "Pilih Data")
Else
Sheet2.Select
BARIS = ActiveCell.Row
Cells(BARIS, 2) = Me.TXTNISN.Value
Cells(BARIS, 3) = Me.TXTNAMASISWA.Value
Cells(BARIS, 4) = Me.CBKELAMIN.Value
Cells(BARIS, 5) = Me.CBKELAS.Value
Cells(BARIS, 6) = Me.CBKETERANGAN.Value
Cells(BARIS, 7) = Me.TXTTAHUN.Value
Cells(BARIS, 8) = Me.TXTHPORTU.Value
Call MsgBox("Data berhasil di update", vbInformation, "Update Data")
Me.TXTNISN.Value = ""
Me.TXTNAMASISWA.Value = ""
Me.CBKELAMIN.Value = ""
Me.CBKELAS.Value = ""
Me.CBKETERANGAN.Value = ""
Me.TXTTAHUN.Value = ""
Me.TXTHPORTU.Value = ""
End If
Sheet1.Select
End Sub
Private Sub TABELDATA_Click()
End Sub
Private Sub TABELDATA_DblClick(ByVal Cancel As MSForms.ReturnBoolean)
Dim SUMBERUBAH, CELLAKTIF As String
Application.ScreenUpdating = False
On Error GoTo EXCELVBA
Me.TXTNISN.Value = Me.TABELDATA.Column(1)
Me.TXTNAMASISWA.Value = Me.TABELDATA.Column(2)
Me.CBKELAMIN.Value = Me.TABELDATA.Column(3)
Me.CBKELAS.Value = Me.TABELDATA.Column(4)
Me.CBKETERANGAN.Value = Me.TABELDATA.Column(5)
Me.TXTTAHUN.Value = Me.TABELDATA.Column(6)
Me.TXTHPORTU.Value = Me.TABELDATA.Column(7)
Sheet2.Select
SUMBERUBAH = Sheets("DATASISWA").Cells(Rows.Count, "B").End(xlUp).Row
Sheets("DATASISWA").Range("B4:B" & SUMBERUBAH).Find(What:=Me.TXTNISN.Value,
LookIn:=xlValues, LookAt:=xlWhole).Activate
CELLAKTIF = ActiveCell.Row
Sheets("DATASISWA").Range("A" & CELLAKTIF & ":I" & CELLAKTIF).Select
Sheet1.Select
Me.CMDADD.Enabled = False
Exit Sub
EXCELVBA:
Call MsgBox("Klik 2x pada tabel data", vbInformation, "Pilih Data")
End Sub
Private Sub TXTCARI_Change()
End Sub
Private Sub UserForm_Initialize()
Call AmbilData
With CBKELAMIN
.AddItem "Laki - Laki"
.AddItem "Perempuan"
End With
With CBKELAS
.AddItem "Kelas 1"
.AddItem "Kelas 2"
.AddItem "Kelas 3"
.AddItem "Kelas 4"
.AddItem "Kelas 5"
.AddItem "Kelas 6"
End With
With CBKETERANGAN
.AddItem "Siswa Aktif"
.AddItem "Siswa Non-Aktif"
End With
With CBKRITERIA
.AddItem "Nama Siswa"
.AddItem "Kelas"
End With
End Sub
Private Sub AmbilData()
Dim TData As Long
Dim iRow As Long
iRow = Sheet2.Range("A" & Rows.Count).End(xlUp).Row
TData = Application.WorksheetFunction.CountA(Sheet2.Range("B5:B10000"))
If TData = 0 Then
Me.TABELDATA.RowSource = ""
Else
Me.TABELDATA.RowSource = "DATASISWA!A5:I" & iRow
End If
Me.TXTJUMLAH.Value = Me.TABELDATA.ListCount
End Sub