excelheru.blogspot.com membuat form-login_untuk_membatasi_akses_data

2
Membuat Form Login untuk Membatasi Akses Data excelheru.blogspot.com /2012/02/membuat-f orm-login-untuk-membatasi.html Udin Haeruddin Form Login, biasanya digunakan untuk membatasi hak akses bagi user untuk melihat dan berinteraksi dengan data. Hanya user yang sudah terdaftar yang bisa mengakses data-data rahasia. Berdasarkan pengalaman penulis di sekolah, Form Login ini biasanya digunakan dalam aplikasi Pendataan Penerimaan Siswa Baru, Pembayaran Siswa, dan Aplikasi Pengolah Nilai yang digunakan oleh beberapa orang yang berbeda. Catatan kali ini membahas cara membuat Form Login sederhana. Hal-hal yang dibutuhkan antara lain: Sebuah sheet yang akan diisi form (Sheet LOGIN). Dalam sheet ini kita butuh setidaknya tiga objek: TextBox untuk Username, TextBox untuk Password dan CommandButton untuk meng-eksekusi Login. Satu tabel Username beserta passwordnya. Bisa ditaruh dalam sheet yang sama dengan sheet Login, bisa ditaruh di sheet tersendiri Sheet yang berisi data (jumlahnya tergantung kebutuhan) Skenario : 1. Kita "memaksa" User untuk mengisi Form Login agar bisa mengakses data. Hal ini bisa dilakukan dengan menyembunyikan semua sheet kecuali sheet LOGIN pada saat file dibuka. 2. Diasumsikan bahwa kita sudah punya Tabel Username beserta passwordnya. Tabel tersebut kita sembunyikan dengan sangat rahasia (xlVeryHidden) 3. Kalau user memasukkan Username dan password dengan benar, maka Sheet Login disembunyikan sekaligus kita munculkan sheet-sheet yang berisi data. 4. Kalau User salah memasukkan password atau username tidak terdaftar, keluar peringatan. Sheet-sheet data tetap tidak bisa dibuka. 5. Pada saat file ditutup, kita sembunyikan semua sheet kecuali sheet Login. Urusan seperti ini dilakukan dengan memanfaatkan Workbook_events, yakni Private Workbook_BeforeClose(Cancel As Boolean). Keterangan tentang Objek pada Form Login: 1. TextBox untuk Username (kita namakan "tUser") sebaiknya menggunakan ActiveX Control, agar tampilannya bisa dimodif 2. TextBox untuk Password (kita namakan "tPass ") dibuat agar tampilan huruf ketika diketik berubah jadi tanda bintang / asterik 3. CommandButton untuk Login. Kodenya kira-kita begini: Dim tbl, rTbl As Range Private Sub CommandButton1_Click()

Upload: mas-jo

Post on 19-Jul-2015

68 views

Category:

Documents


2 download

TRANSCRIPT

Page 1: Excelheru.blogspot.com membuat form-login_untuk_membatasi_akses_data

Membuat Form Login untuk Membatasi Akses Dataexcelheru.blogspot.com /2012/02/membuat- f orm-login-untuk-membatasi.html

Udin Haeruddin

Form Login, biasanya digunakan untukmembatasi hak akses bagi user untukmelihat dan berinteraksi dengan data. Hanyauser yang sudah terdaftar yang bisamengakses data-data rahasia.Berdasarkan pengalaman penulis di sekolah,Form Login ini biasanya digunakandalam aplikasi Pendataan Penerimaan SiswaBaru, Pembayaran Siswa, dan AplikasiPengolah Nilai yang digunakan olehbeberapa orang yang berbeda.

Catatan kali ini membahas cara membuat Form Login sederhana.

Hal-hal yang dibutuhkan antara lain:

Sebuah sheet yang akan diisi form (Sheet LOGIN). Dalam sheet ini kita butuh setidaknya tiga objek: TextBoxuntuk Username, TextBox untuk Password dan CommandButton untuk meng-eksekusi Login.

Satu tabel Username beserta passwordnya. Bisa ditaruh dalam sheet yang sama dengan sheet Login, bisaditaruh di sheet tersendiri

Sheet yang berisi data (jumlahnya tergantung kebutuhan)

Skenario :

1. Kita "memaksa" User untuk mengisi Form Login agar bisa mengakses data. Hal ini bisa dilakukan denganmenyembunyikan semua sheet kecuali sheet LOGIN pada saat file dibuka.

2. Diasumsikan bahwa kita sudah punya Tabel Username beserta passwordnya. Tabel tersebut kitasembunyikan dengan sangat rahasia (xlVeryHidden)

3. Kalau user memasukkan Username dan password dengan benar, maka Sheet Login disembunyikansekaligus kita munculkan sheet- sheet yang berisi data.

4. Kalau User salah memasukkan password atau username tidak terdaftar, keluar peringatan. Sheet- sheet datatetap tidak bisa dibuka.

5. Pada saat file ditutup, kita sembunyikan semua sheet kecuali sheet Login. Urusan seperti ini dilakukandengan memanfaatkan Workbook_events, yakni Private Workbook_BeforeClose(Cancel As Boolean) .

Keterangan tentang Objek pada Form Login:

1. TextBox untuk Username (kita namakan "tUser") sebaiknya menggunakan ActiveX Control, agar tampilannyabisa dimodif

2. TextBox untuk Password (kita namakan "tPass") dibuat agar tampilan huruf ketika diketik berubah jadi tandabintang / asterik

3. CommandButton untuk Login. Kodenya kira-kita begini:

Dim tbl, rTbl As Range Private Sub CommandButton1_Click()

Page 2: Excelheru.blogspot.com membuat form-login_untuk_membatasi_akses_data

Dim nUser As Long Set tbl = Sheets("Password").Cells(1, 1).CurrentRegion Set rTbl = tbl.Offset(1, 1).Resize(tbl.Rows.Count - 1, 1) ' Jika username ada dalam tabel If WorksheetFunction.CountIf(rTbl, tUser) = 1 Then ' mencari nomor Username dalam tabel nUser = WorksheetFunction.Match(tUser, rTbl, 0) 'mengecek apakah password dari username valid If tPass.Value = Sheets("Password").Range("C1").Offset(nUser, 0).Value Then 'tampilkan sheet- sheet yang dibutuhkan, sembunyikan sheet "Login" Sheets("Data1").Visible = -1 Sheets("Data2").Visible = -1 Sheets("Login").Visible = 2 Else ' Jika password tidak valid Tanya = MsgBox("Password salah...!" & vbCrLf & vbCrLf_ & "Mau mencoba LOGIN lagi?", vbQuestion + vbYesNo, "Gagal Login") If Tanya = vbYes Then tPass.Text = "" tPass.Activate Exit Sub Else tUser.Text = "" tPass.Text = "" tUser.Activate Exit Sub End If End If Else ' Jika username tidak ada dalam daftar Ask = MsgBox("Username tidak terdaftar...!" & vbCrLf & vbCrLf _ & "Mau mencoba LOGIN lagi?", vbQuestion + vbYesNo, "Gagal Login") If Ask = vbYes Then tUser.Text = "" tPass.Text = "" tUser.Activate Exit Sub Else ThisWorkbook.Saved = True Application.DisplayAlerts = False ThisWorkbook.Close End If End IfEnd Sub

Demikianlah secara sederhana langkah- langkah membuat Form Login.

Sebenarnya Form Login bisa dibuat dengan menggunakan UserForm sebagaimana yang terdapat di link ini

Seperti biasa, file contoh bisa di download di sini atau di Boxnet pada sidebar.

Art ikel Terkait :