Excel VBA combobox ve textbox veri yazdirma sorunum hakkimda

Katılım
25 Nisan 2020
Mesajlar
1
Excel Vers. ve Dili
2010 64 bit
Üstadlarım benim Excel VBA da combobox tan texbox lara veri yazdirma sorunum var. Sayfa1 adında excel çalışma sayfamda A1 Ahmet Vural,A2 Seçkin Yılmaz,A3 Ekrem Serter olarak 3 adet veri var. B1 Daire-1,B2 Daire-2,B3 Daire -3 verileri var.A sutunundaki verileri rowsource ile userformumdaki combobox1 de listeledim.Sorunum şudur: Userformum da 3 adet textbox a combobox tan Ahmet Vural i seçince textbox1 e Daire-1,Seçkin Yılmaz i seçince textbox2 ye Daire-2,Ekrem Serter i seçince textbox3 e Daire-3 yazmasını nasıl sağlarim.Bu konuda yardımcı olursanız sevinirim.Saygilarimla.
 

tugkan

Altın Üye
Katılım
6 Kasım 2004
Mesajlar
401
Excel Vers. ve Dili
Excel 2016
Türkçe 64 BIT
Altın Üyelik Bitiş Tarihi
16-10-2025
Merhaba,
Bu işlemi gerçekleştirmek için ComboBox'taki seçimden sonra ilgili TextBox'lara doğru değeri yazdırmak üzere ComboBox1_Change olayını kullanabilirsiniz. İşte nasıl yapabileceğinize dair örnek bir VBA kodu:

Kod:
Private Sub UserForm_Initialize()
    ' ComboBox1'in satır kaynağını A sütunundan alıyoruz
    ComboBox1.RowSource = "Sayfa1!A1:A3"
End Sub

Private Sub ComboBox1_Change()
    ' ComboBox'tan seçilen ismi alıyoruz
    Dim selectedName As String
    selectedName = ComboBox1.Value
    
    ' Seçime göre TextBox'lara veri yazdırıyoruz
    Select Case selectedName
        Case "Ahmet Vural"
            TextBox1.Value = "Daire-1"
            TextBox2.Value = ""
            TextBox3.Value = ""
        Case "Seçkin Yılmaz"
            TextBox1.Value = ""
            TextBox2.Value = "Daire-2"
            TextBox3.Value = ""
        Case "Ekrem Serter"
            TextBox1.Value = ""
            TextBox2.Value = ""
            TextBox3.Value = "Daire-3"
        Case Else
            TextBox1.Value = ""
            TextBox2.Value = ""
            TextBox3.Value = ""
    End Select
End Sub
Bu kodun işleyişi şu şekildedir:

  • UserForm_Initialize: Form açıldığında ComboBox1'e Sayfa1deki A sütunundaki isimler yüklenir.
  • ComboBox1_Change: ComboBox'tan bir seçim yapıldığında, seçilen isme göre TextBox'lara ilgili "Daire" verisi atanır.
Bu sayede, ComboBox'tan yapılan seçim doğrultusunda ilgili TextBox dolacaktır.
 

Korhan Ayhan

Administrator
Yönetici
Admin
Katılım
15 Mart 2005
Mesajlar
42,297
Excel Vers. ve Dili
Microsoft 365 Tr-En 64 Bit
Alternatif;

C++:
Option Explicit

Private Sub ComboBox1_Change()
    TextBox1 = ""
    TextBox2 = ""
    TextBox3 = ""
    If ComboBox1.ListIndex >= 0 Then Me.Controls("TextBox" & ComboBox1.ListIndex + 1) = ComboBox1.Column(1)
End Sub

Private Sub UserForm_Initialize()
    ComboBox1.RowSource = "Sayfa1!A1:B3"
End Sub
 
Üst