Soru Sayfada Ara bul

sirkülasyon

Altın Üye
Katılım
10 Temmuz 2012
Mesajlar
2,546
Excel Vers. ve Dili
2021 LTSC TR
Ekli dosyamda yer alan userformda
Combobox1' e kurum adlarını (benzersiz olarak) listelemek
Combobox2' ye o kurumda ki personellerin adlarını
Textbox1' e de personelin görev bilgisini getirmek için rica etsem yardımcı olabilir misiniz?

Saygılarımla .
 

Ekli dosyalar

Merhaba.
Personellerin hangi kurumda çalıştığını nasıl bileceğiz? Belirtmemişsiniz.
 
Sayın Dalgalıkur
Personel................................... Görevi................................. Çalıştığı Kurum
A Kişi ...................................... Antrenör.............................. A KURUMU
şeklinde satır satır belirtilmiş örnekte .
 
Aşağıdaki kodları deneyin.

Kod:
Private Sub ComboBox2_Change()
    Dim BulSatir As Long
    If ComboBox2.ListIndex < 0 Then
        TextBox1.Text = ""
        Exit Sub
    End If
    With ThisWorkbook.Worksheets("Sayfa1")
        BulSatir = .Range("B:B").Find(What:=ComboBox2.Text, LookAt:=xlWhole).Row
        TextBox1.Text = .Cells(BulSatir, "H")
    End With
End Sub

Private Sub UserForm_Initialize()
    Dim Say As Long
    Dim Bak As Long
    Dim Benzersiz As Long
    With ThisWorkbook.Worksheets("Sayfa1")
        Say = .Cells(Rows.Count, "O").End(xlUp).Row
        For Bak = 2 To Say
            Benzersiz = WorksheetFunction.CountIf(.Range("O" & Bak & ":O" & Say), .Cells(Bak, "O"))
            If Benzersiz = 1 Then
                ComboBox1.AddItem .Cells(Bak, "O")
            End If
        Next
        Say = .Cells(Rows.Count, "B").End(xlUp).Row
        ComboBox2.RowSource = .Name & "!B2:B" & Say
    End With
End Sub
 
Üstad
Teşekkür ederim. Ellerine sağlık.
Sadece seçilen kuruma ait personel gelebilir mi?
 
Tamam şimdi anladım.
Aşağıdaki kodları kullanın.

Kod:
Private Sub ComboBox1_Change()
    Dim Say As Long
    Dim Bak As Long
    With ThisWorkbook.Worksheets("Sayfa1")
        Say = .Cells(Rows.Count, "O").End(xlUp).Row
        For Bak = 2 To Say
            If ComboBox1.Text = .Cells(Bak, "O") Then
                ComboBox2.AddItem .Cells(Bak, "B")
            End If
        Next
    End With
        
End Sub

Private Sub ComboBox2_Change()
    Dim BulSatir As Long
    If ComboBox2.ListIndex < 0 Then
        TextBox1.Text = ""
        Exit Sub
    End If
    With ThisWorkbook.Worksheets("Sayfa1")
        BulSatir = .Range("B:B").Find(What:=ComboBox2.Text, LookAt:=xlWhole).Row
        TextBox1.Text = .Cells(BulSatir, "H")
    End With
End Sub

Private Sub UserForm_Initialize()
    Dim Say As Long
    Dim Bak As Long
    Dim Benzersiz As Long
    With ThisWorkbook.Worksheets("Sayfa1")
        Say = .Cells(Rows.Count, "O").End(xlUp).Row
        For Bak = 2 To Say
            Benzersiz = WorksheetFunction.CountIf(.Range("O" & Bak & ":O" & Say), .Cells(Bak, "O"))
            If Benzersiz = 1 Then
                ComboBox1.AddItem .Cells(Bak, "O")
            End If
        Next
    End With
End Sub
 
Rica ederim. Helal olsun. İyi çalışmalar.
 
Geri
Üst