• DİKKAT

    DOSYA İndirmek/Yüklemek için ÜCRETLİ ALTIN ÜYELİK Gereklidir!
    Altın Üyelik Hakkında Bilgi

Kullanıcı Tanımlama

Katılım
5 Eylül 2018
Mesajlar
16
Excel Vers. ve Dili
TR OFFICE 2010
Merhaba ,

forumda bulduğum aşağıdaki kodu biraz değiştirmem lazım. yardımınızı rica ediyorum.

Kod:
Private Sub CommandButton1_Click()
K_Adi = Array("AHMET", "MEHMET", "ALİ", "VELİ", "ADMIN")
Sifre = Array(Sayfa1.Cells(1, 1), Sayfa1.Cells(2, 1), Sayfa1.Cells(3, 1), Sayfa1.Cells(4, 1), Sayfa1.Cells(5, 1))
For x = LBound(K_Adi) To UBound(K_Adi)
If ComboBox1.Text = K_Adi(x) And TextBox2.Text = Sifre(x) Then
Unload Me
MsgBox "Girişiniz onaylandı.", vbInformation, "ONAY"
Exit Sub: End If
Next
MsgBox "Hatalı giriş yaptınız.", vbCritical, "BİLGİ HATASI"
End Sub

Arkadaslar kod yukarıdaki gibi. benim yapmak istediğim ise kullanıcı isimleri ve şifreler worksheet de olsun combobox kullanıcı ismini sayfadan alsın. yalnız kullanıcısayıları sabit olmayacak bugun 5 kullanıcı varsa yarın 8-10 olabilir ya da azalabilir. bunu nasıl yapabiliriz.

lastRowIndex = ws.Cells(ws.Rows.Count, "A").End(xlUp).row gibi kodlari biliyorum ama bir türlü bu array olayina uyarlayamadım.... ayrıca array değil de başka bir teknikle de olabilir. bu önemli değil...

yardımlarınız için şimdiden teşekkürler .....



qdBa15.jpg
 
Kod:
Private Sub UserForm_Initialize()
  ComboBox1.List = Sayfa1.Range("a1:a" & Cells(Rows.Count, 1).End(3).Row).Value
End Sub
Private Sub CommandButton1_Click()
    K_Adi = Sayfa1.Range("a1:b" & Cells(Rows.Count, 1).End(3).Row).Value
    For x = LBound(K_Adi) To UBound(K_Adi)
        If ComboBox1.Text = K_Adi(x, 1) And TextBox2.Text = K_Adi(x, 2) Then
            Unload Me
            MsgBox "Girişiniz onaylandı.", vbInformation, "ONAY"
            Exit Sub: End If
    Next
    MsgBox "Hatalı giriş yaptınız.", vbCritical, "BİLGİ HATASI"
End Sub
 
çok teşekkür ederim... tam istediğim gibi...
 
Kod:
Private Sub UserForm_Initialize()
  ComboBox1.List = Sayfa1.Range("a1:a" & Cells(Rows.Count, 1).End(3).Row).Value
End Sub
Private Sub CommandButton1_Click()
    K_Adi = Sayfa1.Range("a1:b" & Cells(Rows.Count, 1).End(3).Row).Value
    For x = LBound(K_Adi) To UBound(K_Adi)
        If ComboBox1.Text = K_Adi(x, 1) And TextBox2.Text = K_Adi(x, 2) Then
            Unload Me
            MsgBox "Girişiniz onaylandı.", vbInformation, "ONAY"
            Exit Sub: End If
    Next
    MsgBox "Hatalı giriş yaptınız.", vbCritical, "BİLGİ HATASI"
End Sub

Tekrar merhaba , kodu kullanirken bazi sıkıntılar yasiyorum. initialize olayina sizin yazdiginiz kodu aynen yapistirdim. verilerin oldugu sayfa da iken formu calistirirsam combobox a veriler geliyor. sorun yok . ama baska sayfada iken formu calistirdigimda sadece ilk iki satir geliyor. hatta asagidaki gibi tanimlamalar denedim. normalde ilk satiri baslik olsun almasın diye düsündüm ama dedigim gibi baska sayfadan (worksheet ) calistirinca baslikla beraber ikinci sariti gosteriyor.

Kod:
Private Sub UserForm_Initialize()
    Dim ws2 As Worksheet
    Set ws2 = ThisWorkbook.Sheets("USERS")
    ComboBox1.List = ws2.Range("A2:A" & Cells(Rows.Count, 1).End(3).Row).Value
    ComboBox1.ListStyle = fmListStyleOption
End Sub
 
Merhaba.
Sayın @veyselemre şu an çevrimiçi değil.
Initalize kod blokundaki ilgili satırı aşağıdakiyle değiştirerek deneyiniz.
Başlık satırı yok ve veriler birinci satırdan başlıyorsa; A2:A kısmındaki 2 sayısını 1 yaparsınız.
ComboBox1.List = Range("USERS!A2:A" & ws2.Cells(Rows.Count, 1).End(3).Row).Value
 
Geri
Üst