dostum proje verdi hocabu tam oalrak ne işe yarıyor?
dostum araç markaları alt alta yazdım fakat modeller çok fazla nasıl hangisinin hangisi olduğunu seçicekAraç markalarını yan yana değil alt altta yaz, diğerlerinide o şekilde yap ve Sonrasında;
Private Sub UserForm_Initialize()
ComboBox1.RowSource = "sayfa1!a1:a" & Range("a65000").End(xlUp).Row
End Sub
Private Sub ComboBox1_Change()
Dim a As Integer, i As Long
With Sheets("sayfa1")
a = .Range("a1:a" & .Range("a65536").End(3).Row).Find(ComboBox1.Value, , , 1).Row
ComboBox2.Clear
For i = 2 To .Range("ıv" & a).End(1).Column
ComboBox2.AddItem .Cells(a, i).Value
Next i
End With
a = Empty: i = Empty
End Sub
Örnek olarak kullanabilirsin ama dediğim gibi sıralamalarını yan yana değil de alt altta yapsan daha kolaylık olur senin için.
dostum proje verdi hoca
Post automatically merged:
dostum araç markaları alt alta yazdım fakat modeller çok fazla nasıl hangisinin hangisi olduğunu seçicek
Private Sub UserForm_Initialize()
ComboBox1.RowSource = "sayfa1!a2:a" & Range("a65000").End(xlUp).Row
End Sub
Private Sub ComboBox1_Change()
Dim a As String
a = ComboBox1.Text
If a = "SEAT" Then
ComboBox2.Text = ""
ComboBox2.RowSource = "sayfa1!b2:b" & Range("b65000").End(xlUp).Row
End If
If a = "FORD" Then
ComboBox2.Text = ""
ComboBox2.RowSource = "sayfa1!c2:c" & Range("c65000").End(xlUp).Row
End If
If a = "BMW" Then
ComboBox2.Text = ""
ComboBox2.RowSource = "sayfa1!d2:d" & Range("d65000").End(xlUp).Row
End If
If a = "RENAUT" Then
ComboBox2.Text = ""
ComboBox2.RowSource = "sayfa1!e2:e" & Range("e65000").End(xlUp).Row
End If
End Sub
Ayrıcadostum senin istediğin tam olarak bu oluyor;
Kod:Private Sub UserForm_Initialize() ComboBox1.RowSource = "sayfa1!a2:a" & Range("a65000").End(xlUp).Row End Sub Private Sub ComboBox1_Change() Dim a As String a = ComboBox1.Text If a = "SEAT" Then ComboBox2.Text = "" ComboBox2.RowSource = "sayfa1!b2:b" & Range("b65000").End(xlUp).Row End If If a = "FORD" Then ComboBox2.Text = "" ComboBox2.RowSource = "sayfa1!c2:c" & Range("c65000").End(xlUp).Row End If If a = "BMW" Then ComboBox2.Text = "" ComboBox2.RowSource = "sayfa1!d2:d" & Range("d65000").End(xlUp).Row End If If a = "RENAUT" Then ComboBox2.Text = "" ComboBox2.RowSource = "sayfa1!e2:e" & Range("e65000").End(xlUp).Row End If End Sub
Bağlantıları görmek için lütfen Giriş Yap
bu resime bakarak oluştur excelini, üste verdiğim kod ile istediğini elde ediceksin.
Not: arabalardan hiç anlamam markalarına gülme salladım hep
ComboBox1.RowSource = "sayfa1!a2:a" & Range("a65000").End(xlUp).Row
Dim a As String
a = ComboBox1.Text
If a = "FORD" Then
ComboBox2.Text = ""
ComboBox2.RowSource = "sayfa1!c2:c" & Range("c65000").End(xlUp).Row
End If
Dostum çok teşekkür ediyorum. bir sorum daha var markaları ve modelleri seçtik. 2form üzerinde label'a atamasını istiyorum ve ona görede seçilen marka modele göre yıl getirmek istiyorum. Yani 1.form da marka olarak bmw seçti model olarak da 520 ilerle dedikten sonra 2.form üzerinde label da bmw 520 yazıcak ve comboxtan da araç yılı seçilecek bunu nasıl yapabilirim. sanırım excel üzerinde her marka modele göre yıl girmem ve bunu çekmem lazımdostum senin istediğin tam olarak bu oluyor;
Kod:Private Sub UserForm_Initialize() ComboBox1.RowSource = "sayfa1!a2:a" & Range("a65000").End(xlUp).Row End Sub Private Sub ComboBox1_Change() Dim a As String a = ComboBox1.Text If a = "SEAT" Then ComboBox2.Text = "" ComboBox2.RowSource = "sayfa1!b2:b" & Range("b65000").End(xlUp).Row End If If a = "FORD" Then ComboBox2.Text = "" ComboBox2.RowSource = "sayfa1!c2:c" & Range("c65000").End(xlUp).Row End If If a = "BMW" Then ComboBox2.Text = "" ComboBox2.RowSource = "sayfa1!d2:d" & Range("d65000").End(xlUp).Row End If If a = "RENAUT" Then ComboBox2.Text = "" ComboBox2.RowSource = "sayfa1!e2:e" & Range("e65000").End(xlUp).Row End If End Sub
Bağlantıları görmek için lütfen Giriş Yap
bu resime bakarak oluştur excelini, üste verdiğim kod ile istediğini elde ediceksin.
Not: arabalardan hiç anlamam markalarına gülme salladım hep
Post automatically merged:
Ayrıca
mantığını açıklamak gerekirse eğer ödev amaçlı olduğu için açıklayayım mantığını;
Burası a sutununda 1. Hücreden başlayarak 65.000 hücresine kadar combobox1 item kısmına olan verileri ekliyor.Kod:ComboBox1.RowSource = "sayfa1!a2:a" & Range("a65000").End(xlUp).Row
Kod:Dim a As String a = ComboBox1.Text
“a” isminde bir değişken tanımlıyoruz ve “a” değişkenine combobox1.text(yani seçilen yazı) atıyoruz.
Direk şunu demek istedik “eğer “a” değişkenimizde “FORD” verisi seçili ise, Combobox2.text’in içini temizle ve combobox2 nin item kısmına c sutununun 2. Hücresinden başlayarak 65000 hücresine kadar dolu olan hücreler deki veriler aktar dedik ve bu şekilde diğer markalarında verilerini uyarlayarak combobox itemimize çektirdik mantığı bu dostum.Kod:If a = "FORD" Then ComboBox2.Text = "" ComboBox2.RowSource = "sayfa1!c2:c" & Range("c65000").End(xlUp).Row End If
Dostum çok teşekkür ediyorum. bir sorum daha var markaları ve modelleri seçtik. 2form üzerinde label'a atamasını istiyorum ve ona görede seçilen marka modele göre yıl getirmek istiyorum. Yani 1.form da marka olarak bmw seçti model olarak da 520 ilerle dedikten sonra 2.form üzerinde label da bmw 520 yazıcak ve comboxtan da araç yılı seçilecek bunu nasıl yapabilirim. sanırım excel üzerinde her marka modele göre yıl girmem ve bunu çekmem lazım
UserForm1 'e bir buton ekle ve içerisineDostum çok teşekkür ediyorum. bir sorum daha var markaları ve modelleri seçtik. 2form üzerinde label'a atamasını istiyorum ve ona görede seçilen marka modele göre yıl getirmek istiyorum. Yani 1.form da marka olarak bmw seçti model olarak da 520 ilerle dedikten sonra 2.form üzerinde label da bmw 520 yazıcak ve comboxtan da araç yılı seçilecek bunu nasıl yapabilirim. sanırım excel üzerinde her marka modele göre yıl girmem ve bunu çekmem lazım
Private Sub CommandButton1_Click()
UserForm2.Label1.Caption = ComboBox1.Text & " " & ComboBox2.Text
UserForm2.Show
End Sub
Private Sub ComboBox1_Change()
UserForm2.Label2.Caption = UserForm2.Label1.Caption & " " & UserForm2.ComboBox1.Text & " Yılına Ait Araç"
End Sub
Private Sub UserForm_Initialize()
ComboBox1.RowSource = "sayfa1!e2:e" & Range("e65000").End(xlUp).Row
End Sub
Userform1’ de combobox1 ve Combobox ta istediklerini seçtikten sonra ileri isimli butona tıklayıp userform2 geçmek istiyorsun, burada 1 labele userform1 den seçtiğin marka ve model aracın gelmesini istiyorsun ve bu labele göre tekrardan araç ile ilgili yıl mı seçmek istiyorsun? Doğru mu anladım?
Post automatically merged:
Evet dostum form 1 de seçtigim marka modeli form2 de label a aktarmak istiyorum kod icin teşekkürler. Lakin yıl mevzusunu halledemedim direk kendim combox a yazsam seçtiğim araca göre yıl gelmeyecek excele girsem ordan çeksem zaten marka model var bir de araya nasıl yılları ekleyeceğim onu çözemedimUserform1’ de combobox1 ve Combobox ta istediklerini seçtikten sonra ileri isimli butona tıklayıp userform2 geçmek istiyorsun, burada 1 labele userform1 den seçtiğin marka ve model aracın gelmesini istiyorsun ve bu labele göre tekrardan araç ile ilgili yıl mı seçmek istiyorsun? Doğru mu anladım?
Post automatically merged:
UserForm1 'e bir buton ekle ve içerisine
Userform2 yi oluştur ve içerisine 2 adet label 1 adet combobox ekle ve kod bölümüne direk şunu yazKod:Private Sub CommandButton1_Click() UserForm2.Label1.Caption = ComboBox1.Text & " " & ComboBox2.Text UserForm2.Show End Sub
Kod:Private Sub ComboBox1_Change() UserForm2.Label2.Caption = UserForm2.Label1.Caption & " " & UserForm2.ComboBox1.Text & " Yılına Ait Araç" End Sub Private Sub UserForm_Initialize() ComboBox1.RowSource = "sayfa1!e2:e" & Range("e65000").End(xlUp).Row End Sub
bu kodlar işini görecektir. Önce ki sorduğun ile birleştir bunları işini görür.
yıl konusuna gelirsek eğer; ister sayfadan çek ister item olarak combobox içerisinde ekleme yaparak kullan sana kalmış artık. Ben sayfadan çektim "e" sutununa 1990-2022 yılları arasını ekledim ve bu şekilde çektirdim
Kusura bakma çok geç cevap verdim çok işim vardı;Evet dostum form 1 de seçtigim marka modeli form2 de label a aktarmak istiyorum kod icin teşekkürler. Lakin yıl mevzusunu halledemedim direk kendim combox a yazsam seçtiğim araca göre yıl gelmeyecek excele girsem ordan çeksem zaten marka model var bir de araya nasıl yılları ekleyeceğim onu çözemedim
Çok teşekkür ederim dostum. çok güzel özetlemişsin ben tam olarak ne istediğime ne yapacağıma karar veremedim ilk önce bunu kesinleştirmem lazımKusura bakma çok geç cevap verdim çok işim vardı;
Bence hiç o şekilde uğraşma kayıt formu oluştur ordan tek tek kayıt gerçekleştir yaptığın kayıtta marka model yıl seçenekleri koy onları kayıt ettir sonrasında listbox aracılığı ile göster ordan seçme yaparak istediğin araca ulaş. Ama sende ki en büyük eksikliği söylüyeyim tam olarak ne istediğini kesinleştirmemişsin. Önce istediğin şeyib tasarımını tamamla sonrasında arka plan çalışmasına yönel diğer türlü durmadan yaptığın şeyler değişecek
Aynen öyle kolay gelsinÇok teşekkür ederim dostum. çok güzel özetlemişsin ben tam olarak ne istediğime ne yapacağıma karar veremedim ilk önce bunu kesinleştirmem lazım
We use cookies and similar technologies for the following purposes:
Do you accept cookies and these technologies?
We use cookies and similar technologies for the following purposes:
Do you accept cookies and these technologies?