[ÇÖZÜLDÜ] Combobox'ta uyarı hatası ve liste sorunu.

ynmcan

Altın Üye
Katılım
30 Ağustos 2008
Mesajlar
677
Excel Vers. ve Dili
2010 türkçe
Altın Üyelik Bitiş Tarihi
29-05-2025
Selam arkadaşlar.
Combobox4'te seçim yaparken arada bir olmaması gereken uyarı mesa geliyor.
Ayrıca Combobox4' listesini oluşturan Sayfa2!B2:B2 hücrelerinin içeriğini değiştirdiğimde hata veriyor.
Daha geniş açıklama örnek dosyamda bulunmakta. Yardımcı olursanız sevinirim.
Şimdiden teşekkürler.
 

Levent Menteşoğlu

Administrator
Yönetici
Admin
Katılım
13 Ekim 2004
Mesajlar
16,058
Excel Vers. ve Dili
Excel 2010-32 bit-Türkçe
Excel 365 -32 bit-Türkçe
Combobox4'teki kodu aşağıdaki ile değiştirin. Combobox4ten seçilen verinin Sayfa2deki satır nosunu bulmak için listindex değerini kullanmanız yeterlidir.

Kod:
Private Sub ComboBox4_Change()
    [B][COLOR=red]sat = ComboBox4.ListIndex + 2[/COLOR][/B]
    ComboBox1.Clear
    ComboBox2.Clear
    ComboBox3.Clear
    For Each hcr In Sayfa2.Range("c" & sat & ":k" & sat)
    ComboBox1.AddItem hcr.Value
    ComboBox2.AddItem hcr.Value
    ComboBox3.AddItem hcr.Value
    Next
End Sub
 

ynmcan

Altın Üye
Katılım
30 Ağustos 2008
Mesajlar
677
Excel Vers. ve Dili
2010 türkçe
Altın Üyelik Bitiş Tarihi
29-05-2025
syn Levent MENTEŞOĞLU,
yoladığınız kodu denedim , bu sorunum düzeldi. Çok teşekkür ederim ellerinize sağlık.
Diğer sorunumun nedenini anladım ama tam olarak çözemedim.Sorun combobox4'e seçimyaptığımda combobox1,2,3 ün listelerini sildiğinden üçünüde eşit olarak görüyor bunun için uyarı veriyor.Ben bu sorunu kodta
Private Sub ComboBox4_Change()
sat = ComboBox4.ListIndex + 2
ComboBox1.Clear
ComboBox1 = "a"
ComboBox2.Clear
ComboBox2 = "b"
ComboBox3.Clear
ComboBox3 = "c"
For Each hcr In Sayfa2.Range("c" & sat & ":k" & sat)
ComboBox1.AddItem hcr.Value
ComboBox2.AddItem hcr.Value
ComboBox3.AddItem hcr.Value

Next
End Sub
kırmızı olan satırları ekleyerek düzelttim. Ancak be n bu comboboxlar boş ike uyarı vermemesini istiyorum.
 

Levent Menteşoğlu

Administrator
Yönetici
Admin
Katılım
13 Ekim 2004
Mesajlar
16,058
Excel Vers. ve Dili
Excel 2010-32 bit-Türkçe
Excel 365 -32 bit-Türkçe
üçünüde eşit olarak görüyor derken neyi kasdettiğinizi anlayamadım. Nasıl bir uyarı veriyor.
 

ynmcan

Altın Üye
Katılım
30 Ağustos 2008
Mesajlar
677
Excel Vers. ve Dili
2010 türkçe
Altın Üyelik Bitiş Tarihi
29-05-2025
Örnek dosyada açıklama yaptım
 

Levent Menteşoğlu

Administrator
Yönetici
Admin
Katılım
13 Ekim 2004
Mesajlar
16,058
Excel Vers. ve Dili
Excel 2010-32 bit-Türkçe
Excel 365 -32 bit-Türkçe
Combobox1, 2 ve 3'e aşağıdaki gibi kırmızı renkli satırı ekleyin. Aşağıdaki kod Combobox1 için verilmiştir. Diğerlerinde comboboxun ismini değiştirmeyi unutmayın.

Kod:
 Private Sub ComboBox1_Change()
    On Error Resume Next
    renkleri_sil
    [B][COLOR=red]If ComboBox1 = "" Then Exit Sub
[/COLOR][/B]    If ComboBox2 = ComboBox1 Or ComboBox3 = ComboBox1 Then
    MsgBox "BU KALIP ZATEN TAKILI...!   LÜTFEN BAŞKA KALIP SEÇİNİZ."
    ComboBox1 = ""
    End If
    a = WorksheetFunction.Match(Val(ComboBox1), Sayfa2.Rows(sat), 0)
    Sayfa2.Cells(sat, a).Interior.Color = vbGreen
End Sub
 

ynmcan

Altın Üye
Katılım
30 Ağustos 2008
Mesajlar
677
Excel Vers. ve Dili
2010 türkçe
Altın Üyelik Bitiş Tarihi
29-05-2025
syn Levent MENTEŞOĞLU,
yoladığınız kodu denedim bu koda işime yaradı teşekkür ederim.
Son bir ricam var.
Combobox1,2,3' ün açılır listelerinde veri aldığı hücrelerin renklerini görebilirmiyim?
Örnek dosya ekte.
 

Levent Menteşoğlu

Administrator
Yönetici
Admin
Katılım
13 Ekim 2004
Mesajlar
16,058
Excel Vers. ve Dili
Excel 2010-32 bit-Türkçe
Excel 365 -32 bit-Türkçe
Comboboxta her satırını ayrı ayrı renklendirmek mümkün değildir. Ancak seçilen verinin rengi backcolor olarak atanabilir.

Not: Her satırda ayrı renk göstermek için imagecombo ve imagelist nesneleri kullanılabilir ancak buda kodlamayı çok karışıtıracağından önermiyorum.
 

ynmcan

Altın Üye
Katılım
30 Ağustos 2008
Mesajlar
677
Excel Vers. ve Dili
2010 türkçe
Altın Üyelik Bitiş Tarihi
29-05-2025
onun yerine, Combobox1,2,3'e Combobox4'te seçtiğim satırdaki yeşil hücrelerin değerleri gelebilirmi?
Şu anda Combobox4'te seçim yaptığımda Combobox1,2,3 boş görünüyor.
 
Son düzenleme:

Levent Menteşoğlu

Administrator
Yönetici
Admin
Katılım
13 Ekim 2004
Mesajlar
16,058
Excel Vers. ve Dili
Excel 2010-32 bit-Türkçe
Excel 365 -32 bit-Türkçe
Combobox4 teki kodu aşağıdaki ile değiştirin.

Kod:
Private Sub ComboBox4_Change()
    Dim hcr As Range
    sat = ComboBox4.ListIndex + 2
    ComboBox1.Clear
    ComboBox2.Clear
    ComboBox3.Clear
    For Each hcr In Sayfa2.Range("c" & sat & ":k" & sat)
    If hcr.Interior.ColorIndex = 4 Then
    ComboBox1.AddItem hcr.Value
    ComboBox2.AddItem hcr.Value
    ComboBox3.AddItem hcr.Value
    End If
    Next
End Sub
 

ynmcan

Altın Üye
Katılım
30 Ağustos 2008
Mesajlar
677
Excel Vers. ve Dili
2010 türkçe
Altın Üyelik Bitiş Tarihi
29-05-2025
Benim açıklamam yanlış anlaşılmış. Ben yeşil hücrelerdeki değerleri Combobox 1, 2, 3'ün listelerinde değil,text lerinde görmek istiyordum. Yanlış anlatımdan dolayı özür dilerim.( örnek olarak şu anda. Combobox 4' te Ø 400 / 1250 BB.yi seçtiğimde .Bu satırda şu anda yeşil olan hücreler olan 1,3,4 Combobox 1'in text inde ''1'' , Combobox 2' nin text inde ''3'', . Combobox 3' ün text inde ''4'' görünsün.
 

Levent Menteşoğlu

Administrator
Yönetici
Admin
Katılım
13 Ekim 2004
Mesajlar
16,058
Excel Vers. ve Dili
Excel 2010-32 bit-Türkçe
Excel 365 -32 bit-Türkçe
Aşağıdaki kodu deneyin.

Kod:
Private Sub ComboBox4_Change()
    Dim hcr As Range
    Dim deg(3)
    sat = ComboBox4.ListIndex + 2
    ComboBox1 = ""
    ComboBox2 = ""
    ComboBox3 = ""
    ComboBox1.Clear
    ComboBox2.Clear
    ComboBox3.Clear
    For Each hcr In Sayfa2.Range("c" & sat & ":k" & sat)
    ComboBox1.AddItem hcr.Value
    ComboBox2.AddItem hcr.Value
    ComboBox3.AddItem hcr.Value
    If hcr.Interior.ColorIndex = 4 Then
    c = c + 1
    deg(c) = hcr
    End If
    Next
    ComboBox1 = deg(1)
    ComboBox2 = deg(2)
    ComboBox3 = deg(3)
End Sub
 

ynmcan

Altın Üye
Katılım
30 Ağustos 2008
Mesajlar
677
Excel Vers. ve Dili
2010 türkçe
Altın Üyelik Bitiş Tarihi
29-05-2025
Syn. Levent MENTEŞOĞLU,
ilginiz ve yardımlarınız için çok teşekkür ederim, ellerinize ve zihninize sağlık.
Yaptığınız düzenlemelerin hepsi işime yaradı.
Tekrar teşekkür ederim. Hayırlı geceler.
 

Levent Menteşoğlu

Administrator
Yönetici
Admin
Katılım
13 Ekim 2004
Mesajlar
16,058
Excel Vers. ve Dili
Excel 2010-32 bit-Türkçe
Excel 365 -32 bit-Türkçe
Rica ederim. Sizede hayırlı geceler.
 
Üst