• DİKKAT

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

Comboboxta seçim yapma

magnesia

Yasaklı üye
Katılım
1 Ocak 2018
Mesajlar
351
Excel Vers. ve Dili
Excel 2010 Türkçe
Arkadaşlar merhaba.
Combobox2'yi tıkladığımda açılan listede, "Firmalar" sayfasının B-C-D-E-F sütunlarının 1. satırındaki firma isimlerini listelemesini istiyorum.
Şimdiden teşekkürler.
 
Dosyanızın yapısına göre çözüm üretmek gerekir. Bu nedenle, örnek dosya eklerseniz vakti olan birisi yardımcı olur.

Veya, sitede arama yaparak benzer örnekleri inceleyebilirsiniz. Eminim, bu tür bir mesaja rastlayacaksınızdır.
.
 
Öncelikle ilginize teşekkür ederim.. Ancak; bu kadar basit (sizce tabii ki) bir soru için koca dosyayı eklemenin anlamsız olduğunu düşündüğüm için eklememiştim..
Combobox2'yi tıkladığımızda;
"Firmalar" sayfasının B1-C1-D1-E1-F1 hücrelerindeki firma isimlerini listelemesini istiyorum...
 
Merhaba;

Sayfanın kod bölümüne;

Private Sub Worksheet_Activate()
On Error Resume Next
Set s1 = ThisWorkbook.Worksheets("Firmalar")
ComboBox1.Clear
Application.ScreenUpdating = False
Set combo = CreateObject("scripting.dictionary")
For i = 2 To s1.Cells(1, 256).End(xlToLeft).Column
combo.Add s1.Cells(1, i), Nothing
Next i
ComboBox1.List = Application.Transpose(combo.keys)
Application.ScreenUpdating = True
End Sub

Kodlarını yerleştirerek deneyin. (Kodlar Combobox1 içindir)

İyi çalışmalar.

NOT: Syn Haluk'un önerisini dikkate alın.
Asıl dosya yerine basit bir örnekte sorunun anlaşılmasını sağlayacaktır.
Örn: sizin sorunuzda Combobox'un Userformda mı? , Sayfada mı? olduğu belli değil!!!
 
Son düzenleme:
Sayın muygun...
İlgi ve emeğinize teşekkürler..
Sanırım hata yapıyorum ki olmadı.. Sorun benden kaynaklanıyor biliyorum.
Ben, GENEL SAYFA isimli sayfada bulunan "GİRİŞ" butonuna basıyorum ve açılan userformda bulunan combobx2'ye tıkladığımda istediğim listelemeyi yapmasını istiyorum...
 
Bir şekilde hallettim..
Şöyle yaptım :
Kategori isimli bir sayfa açtım. Bu sayfaya firma kategorilerini yazdım. Sonra bunu ad tanımla ile sisteme tanıttım.
Row Source kısmına "Kategori" yazınca sorun çözüldü..
İlgi ve emeğini esirgemeyen arkadaşlara teşekkürler..
 
Sayın Muygun 'un kod ile çözümüne alternatif olarak ;

Sorunuzda sayfa üzerinde mi userform üzerinde mi çözüm belirtmediğiniz için iki olasılığı da taşıyan dosya ektedir.

Öncelikle açılır kutuya gelecek sağa doğru giden listeyi " tümünü seçip kopyalayıp atıl bir yerde özel yapıştır- işlemi tersine çevir seçeneği ile dikine dizdikten sonra

sayfa üzerindeki açılır kutuya ya da
userform üzerindeki açılır kutuya veri rahatlıkla ve kodlara girmeden de alabilirsiniz.

Toplam 3 çözüm önerilmiş, 4 zaman harcanmış oldu . Bu da belirteç göstermediğiniz için oldu ...

Ben, GENEL SAYFA isimli sayfada bulunan "GİRİŞ" butonuna basıyorum ve açılan userformda bulunan combobx2'ye tıkladığımda istediğim listelemeyi yapmasını istiyorum...

Bu da sonradan gelmiş ve sorunuza 10 kere baksam da yok böyle bir açıklama ...

Sayın Haluk'un koca diye nitelendirdiğiniz dosyanızı değil , sorunu gösterebileceğiniz basit bir dosya istediğini düşünmek de iyi olabilirdi .

Örnek dosya istemenin sebebi öyle istemedim böyle istedim şeklinde ve kendisi başta muallak kalmış soruyu "anlaşılmadı mı" dercesine tekrar eden mesajlar almak yerine tek anlaşılır istekte bir dosyaya " zaman harcamak" tır . Bu da sorana kalan bir iş olmalıdır ...

Öncelikle soru; anlatılmalıdır ...
 

Ekli dosyalar

Son düzenleme:
İşte NOT kısmına geldik..
Umarım bundan sonraki soru/sorunlarınızda bunu dikkate alırsınız.

Userformun kod kısmına;

Private Sub UserForm_Initialize()
Set s1 = ThisWorkbook.Worksheets("Firmalar")
ComboBox2.Clear
Application.ScreenUpdating = False
Set combo = CreateObject("scripting.dictionary")
For i = 2 To s1.Cells(1, 256).End(xlToLeft).Column
combo.Add s1.Cells(1, i), Nothing
Next i
ComboBox2.List = Application.Transpose(combo.keys)
End Sub

Kodlarını yerleştirip deneyin.
İyi çalışmalar.
 
Tekrar teşekkürler...
 
Geri
Üst