Formulir Login VBA

Formulir Login VBA Excel

Dimungkinkan untuk membuat formulir pengguna berbasis login di excel VBA dengan semua daftar drop-down id login dan kata sandi akan dibagikan secara terpisah. Pada suatu saat, Anda pasti sudah mendapat ide untuk membuat formulir pengguna login berbasis kata sandi yang mengharuskan pengguna untuk memilih id pengguna mereka dan memasukkan kata sandi untuk mengakses lembar kerja yang diperlukan.

Pada artikel ini, kami akan menunjukkan cara membuat formulir pengguna login menggunakan excel VBA.

Bagaimana cara Membuat Formulir Pengguna Login?

Misalnya, anggap Anda memiliki nomor penjualan berdasarkan wilayah di lembar kerja yang berbeda. Kami memiliki 4 nama zona berbeda dan setiap lembar kerja zona hanya memiliki data terkait. Sekarang idenya adalah membuat formulir login di mana kepala penjualan zona "Timur" seharusnya hanya melihat data zona "Timur", bukan zona lain tetapi sebagai admin, Anda harus melihat semua lembar kerja zona.

Anda dapat mengunduh Template Excel Login VBA ini di sini - Template Excel Login VBA

Pertama, kita perlu memasukkan nama sheet yang disebut "Admin". Di lembar admin ini, kita perlu membuat kredensial "ID Masuk" dan "Kata Sandi".

Saya telah menamai zona dan kata sandi yang sama, Anda dapat mengubahnya nanti. Untuk nama zona, saya telah membuat rentang nama sebagai "ZoneList". "Manajer Nama" ini akan digunakan nanti pada formulir pengguna login ini.

Ketika pengguna membuka file, mereka akan melihat satu lembar dummy di latar belakang, jadi buat lembar baru dan beri nama sebagai "Dummy" Sheet ".

Menggunakan lembar kerja ini kami akan membuat formulir pengguna login.

Langkah 1: Masukkan Formulir Pengguna

Tekan ALT + F11 kunci untuk membuka jendela VBA Editor.

  • Dari tab "Sisipkan" masukkan "Formulir Pengguna".

  • Ini akan membuat formulir pengguna baru seperti di bawah ini.

  • Tekan tombol F4 untuk melihat jendela Properties, dari jendela properti ini ubah nama formulir pengguna menjadi "LoginUF"

  • Demikian pula dengan menggunakan jendela properti ini kita dapat bermain dengan properti formulir pengguna. Saya telah membuat beberapa perubahan properti, Anda dapat merujuk jendela properti di bawah ini untuk menerapkan perubahan pada properti formulir pengguna.

  • Sekarang formulir pengguna saya terlihat seperti ini.

Langkah 2: Desain Userform

  • Dari kotak alat formulir pengguna masukkan dua kotak label dan masukkan teks seperti yang ditunjukkan di bawah ini.

  • Dari toolbox masukkan “Combo Box”.

  • Untuk excel kotak kombo ini kita perlu mendapatkan nama zona dari lembar kerja "Lembar Admin", jadi dari jendela properti "Kotak Kombo" pertama beri nama untuk kotak kombo ini sebagai "Zone_List_ComboBox" di bawah properti "Nama".

  • Dari properti "Sumber Baris" kotak kombo masukkan nama yang diberikan ke daftar zona di "Lembar Admin".

  • Sekarang kotak kombo kami akan menampilkan nama zona di daftar drop-down di excel.

  • Untuk "Enter You Password" kita perlu memasukkan "Text Box" dari toolbox.

  • Untuk "Kotak Teks" ini kita perlu mengubah properti "Nama" dan mengubahnya menjadi "Kata Sandi_TB".

Sekarang dalam pengkodean untuk form login VBA, “Combo Box” akan disebut dengan nama “Zone_List_ComboBox” dan “Text Box” akan disebut dengan nama “Password_TB”.

  • Masukkan dua "Tombol Perintah" dan masukkan teks sebagai "Masuk" dan "Keluar".

Untuk tombol perintah "Masuk", ubah properti nama menjadi "Login_CommandButton" dan untuk tombol perintah "Keluar", ubah properti nama menjadi "LogOut_CommandButton".

Langkah 3: Kode

Kita selesai dengan bagian desain formulir pengguna login VBA, saatnya menulis kode untuk membuat formulir pengguna berbasis login di excel VBA.

  • Klik dua kali pada Tombol Perintah "Masuk" ini akan membuka sub prosedur kosong seperti di bawah ini.

Di dalam prosedur ini, kita perlu menulis kode tentang apa yang akan terjadi jika tombol "Masuk" ditekan.

Saya sudah menulis kode, Anda dapat menyalin dan menempel kode dari bawah di dalam prosedur di atas.

Kode:

Private Sub Login_CommandButton_Click () Jika Zone_List_ComboBox.Value = "" Maka MsgBox "Zone Tidak Bisa Kosong !!!", vbInformation, "Zone Name" Keluar Sub End Jika Jika Password_TB.Value = "" Maka MsgBox "Kata Sandi Tidak Bisa Kosong !! ! ", vbInformation," Password "Keluar Sub End Jika Jika Zone_List_ComboBox.Value =" Admin "Dan Password_TB.Value =" Admin "Lalu Bongkar Saya Redupkan Sebagai Lembar Kerja Untuk Setiap W Di ActiveWorkbook.Worksheets Ws.Visible = xlSheetVisible Next Ws Sheets ("Admin"). Pilih Lain Dim ZoneName Sebagai String Dim Password Sebagai Varian ZoneName = Zone_List_ComboBox.Value Password = Application.WorksheetFunction.VLookup (ZoneName, Sheets ("Admin"). Range ("A: B"), 2, 0 ) Jika Kata Sandi Kata Sandi_TB.Value Lalu MsgBox "Kata sandi tidak cocok", vbInformation,"Wrong Password" Keluar dari Sub End Jika Jika Password = Password_TB.Value Lalu Bongkar Saya Lembar (ZoneName) .Visible = True Sheets (ZoneName). Pilih ActiveSheet.Range ("A1"). Pilih End If End If End Sub

Demikian pula, klik dua kali pada tombol perintah "Log Out" dan masukkan kode di bawah ini.

Kode:

 Private Sub LogOut_CommandButton_Click () ThisWorkbook.Save ThisWorkbook.Close End Sub 

Sekarang klik dua kali pada "Formulir Pengguna" (bukan pada salah satu tombol yang dimasukkan) dan tambahkan kode di bawah ini.

Kode:

Sub Pribadi UserForm_QueryClose (Batal Sebagai Integer, CloseMode Sebagai Integer) 'Mencegah penggunaan tombol Tutup Jika CloseMode = vbFormControlMenu Kemudian MsgBox "Mengklik tombol Tutup tidak berfungsi." Batal = Benar Akhir Jika Akhir Sub

  • Sekarang klik dua kali pada ikon "Buku Kerja Ini". Ini akan terbuka di bawah bidang kode kosong.

Sekarang tambahkan kode di bawah ini di bidang kosong ini.

Kode:

 Sub Pribadi Workbook_Open () Dim Ws As Worksheet Application.DisplayAlerts = False Application.ScreenUpdating = False Untuk Setiap Ws Dalam ActiveWorkbook.Worksheets Jika Ws.Name "Dummy" Kemudian Ws.Visible = xlSheetVeryHidden End Jika Berikutnya Ws LogInUF.Show End Sub 

  • Kami selesai dengan bagian pengkodean formulir. Simpan buku kerja sebagai buku kerja "Macro-Enabled" dan buka kembali buku kerja tersebut. Setelah membuka kembali buku kerja, kita akan melihat jendela di bawah ini.

  • Dari formulir pengguna ini, kita perlu memilih nama zona masing-masing dan memasukkan kata sandi yang terkait. Misalnya, saya akan memilih zona "Timur" dari drop-down dan memasukkan sandi.

  • Jika saya mengklik "Log In" kita hanya dapat melihat lembar kerja zona "Timur".

Demikian pula, jika kita masuk dengan "Admin", kita dapat mengakses semua lembar kerja.

Seperti ini, kita dapat membuat akses lembar kerja yang dilindungi kata sandi berdasarkan login.

Hal-hal untuk diingat

  • You need to use the same names that we have given to the user form, text box, and command button and combo box in the coding.
  • You can change the zone name and password according to your wish.