
Excel VBA Giriş Formu
VBA Girişi, Excel çalışma kitabını ve çalışma sayfalarını korumak için benzersiz bir yoldur. İnceleme menü seçeneğinde bulunan Sayfayı Koru ve Çalışma Kitabını Koru seçeneklerimiz olmasına rağmen, çalışma sayfasını ve çalışma kitabını kilitlemenin düzeltme kalıplarına sahibiz. VBA girişinin yardımıyla, tüm Excel çalışma kitabına ve belirli çalışma sayfalarına erişmek için oturum açma kimliği ve parolasını yetkilendirebileceğimiz iletişim kutusu veya oturum açma formu oluşturabileceğimiz özelleştirilmiş bir oturum açma kutusu oluşturduk. Daha iyi anlamak için, birden fazla sayfası olan bir Excel dosyamız olduğunu ve her sayfanın korunması gereken bazı gizli verileri olduğunu varsayalım. Ve her veri herkes içindir, bu nedenle her kullanıcıya oturum açma kimliğini ve parolasını vererek bir oturum açma formu oluşturabiliriz ve kullanıcı yalnızca kendisi için olan verileri açabilir ve erişebilir. Bu yalnızca VBA Girişi ile yapılabilir.
VBA'da Giriş Kullanıcı Formu Nasıl Oluşturulur?
VBA Kodunu kullanarak Excel'de mantıksal kullanıcı formunun nasıl oluşturulacağını öğreneceğiz.
Örnek #1
Bu örnekte, Kullanıcı formunu kullanarak giriş kutusunun nasıl oluşturulacağını öğreneceğiz. Bunun için aşağıdaki adımları izleyin:
Adım 1: Bunun için VBA'yı açın ve Ekle menü sekmesinden UserForm'u seçin .

Adım 2: Şimdi UserForm'u açtıktan sonra araç kutusundan Etiket seçeneğini seçip UserForm'da bir etiket kutusu oluşturalım.

Adım 3: Sol tarafta oluşturduğumuz Etiketin Özellikleri var. Oluşturulan etiketin adını, yazı tipini, boyutunu ve rengini değiştirebiliriz.

Adım 4: Aşağıdaki ekran görüntüsünde görebileceğiniz gibi, kullanıcı formunun adını Label1, Yazı Tipini Arial Narrow, Ön Rengi Mavi ve Başlık'ı Kullanıcı Adını Gir olarak değiştirdik. Daha sonra özelleştirebiliriz.

Adım 5: Şimdi aşağıda gösterildiği gibi giriş yapmak için kullanıcı adını girebileceğimiz bir metin kutusu oluşturacağız.

Adım 6: Şimdi şifreyi girmek için bir etiket ekleyeceğiz.

Adım 7: Yine aşağıda gerektiği gibi Etiket adını, rengini, yazı tipini, boyutunu ve adını değiştireceğiz.

Adım 8: Şifre etiketinin karşısına şifreyi girmek için bir metin kutusu ekleyin.

Adım 9: Ve son olarak, Command butonu yardımıyla tıklanacak bir giriş butonu oluşturun.

Adım 10: Şimdi sol taraftaki Özellikler penceresinden oluşturulan Komut Düğmesinin özelliklerini düzenleyin.

Adım 11: VBA'da bir oturum açma formu oluşturmanın bir kısmını tamamladık. Şimdi bu oturum açmayı çalıştırmak için küçük bir VBA kodu yazacağız. Bunun için, oluşturulan UserForm'un herhangi bir yerine çift tıklayın ve orada aşağıda gösterildiği gibi alt [sub()] prosedürü yazın.
KOD
Private Sub Login_Click() End Sub

Adım 12: Bir IF – End IF döngüsü açın ve koşulu Login bayrağı FALSE olacak şekilde yazın, ardından çalışma sayfasını etkinleştirin ve ardından login'i gösterin.
Private Sub Login_Click() If LoginFlag = False Then Worksheets("Sheet1").Activate LogIn.Show End If End Sub

Adım 13: Şimdi F8 tuşuna basarak kodu derleyeceğiz ve menü çubuğunun altında bulunan Oynat butonuna basarak kodu çalıştıracağız, Giriş kutusu karşımıza çıkacak.

Örnek #2
VBA Girişi oluşturmanın çeşitli yolları olmasına rağmen. Ancak, girişi listelemek için IF – End IF döngüsünü kullanacağımız başka bir kod göreceğiz. Bunun için, yine örnek-1'de gördüğümüz UserForm oluşturmak için aynı işlemi izleyin. Her biri Kullanıcı Adı ve Parola girmek için 2 etiket ve 2 metin kutusu ekleyin.
Adım 1: Giriş kutusu deseninde herhangi bir değişiklik olmadığı için örnek-1'de gördüğümüz aynı Kullanıcı Formunu kullanabiliriz veya yeni bir tane oluşturabiliriz. Şimdi Kullanıcı formuna çift tıklayın ve alt prosedürü yazın. Şimdi koşul için IF – End IF döngüsünü açın, Kullanıcı adı kutusu boşsa bana "Giriş Kimlik Bilgilerini Girin" mesajını verin, aksi takdirde "Kullanıcı Adını Girin" mesajını verin.
Private Sub Login_Click() If UsernameBox.Value = "" Then If PasswordBox.Value = "" Then MsgBox "Enter Login Credentials!" Else MsgBox "Enter Username" End If End Sub

Adım 2: Şimdi Else If koşulunu tekrar tanımlayın, kullanıcı adı değeri USER1 ve şifre Boş ise bana “Şifreyi Girin” mesajını verin ve şifre “abcd” ise uygulamayı gizleyin veya “Oturum Açma Kimlik Bilgilerini Tekrar Girin” mesajını verin.
Private Sub Login_Click() If UsernameBox.Value = "" Then If PasswordBox.Value = "" Then MsgBox "Enter Login Credentials!" Else MsgBox "Enter Username" End If ElseIf UsernameBox.Value = "USER1" Then If PasswordBox.Value = "" Then MsgBox "Enter Password" ElseIf PasswordBox.Value = "abcd" Then Me.Hide: Application.Visible = True Else MsgBox "Please Re-Enter Login Credentials." End If End Sub

Adım 3: Son olarak, oturum açma parolası yanlışsa veya boşsa son IF koşulunu listeleyin ve ardından "Doğru Kimlik Bilgilerini Girin" mesajını döndürün.
Private Sub Login_Click() If UsernameBox.Value = "" Then If PasswordBox.Value = "" Then MsgBox "Enter Login Credentials!" Else MsgBox "Enter Username" End If ElseIf UsernameBox.Value = "USER1" Then If PasswordBox.Value = "" Then MsgBox "Enter Password" ElseIf PasswordBox.Value = "abcd" Then Me.Hide: Application.Visible = True Else MsgBox "Please Re-Enter Login Credentials." End If Else If PasswordBox.Value = "" Then MsgBox "Enter Password" Else MsgBox "Please Enter Correct Credentials." End If End If End Sub

Adım 4: Giriş için oluşturduğumuz Komut Düğmesi için yeni bir alt prosedür açın ve uygulamadan çıkmak için aşağıdaki satırı yazın.
Private Sub CommandButton2_Click() ThisWorkbook.Application.Quit End Sub

Adım 5: Ve son olarak, uygulamayı kapatmak için Created UserForm name için son alt prosedürü yazın.
Private Sub LoginArena_QueryClose(Cancel As Integer, CloseMode As Integer) ThisWorkbook.Application.Quit End Sub

Adım 6: Son hali aşağıdaki gibi olacaktır.

Adım 7: Şimdi kodun her bir adımını derleyin ve çalıştırın. Açılan oturum açma formunda, kullanıcı adını USER1 olarak ve şifreyi kodda belirtilen bölüme “abcd” olarak girin. ENTER'a basarsak veya LOGIN'e tıklarsak, koddan çıkılacak ve VBA penceresine geri döneceğiz.

