• DİKKAT

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

Bir kod'u, bir kaç nesne için kullanmak

Katılım
10 Kasım 2006
Mesajlar
1,288
Excel Vers. ve Dili
Excel-2016
Çok Değerli Arkadaşlar..! Hayırlı İftarlar..

Aşağıdaki üç satırlık özelliği, her combobox için ayrı ayrı yazmadan, bir kaç Combobox'a atama yapabilirmiyiz.. Yani her combobox'un özellik kazandığı kod kaynağı aynı olacak..

Örneğin, diyelimki ComboBox1,ComboBox2,ComboBox3,ComboBox4,ComboBox5 var..
Her combobox için tekrar tekrar yazmaktansa, Aşağıda sadece ComboBox1 için yazılı kodları, diğer 4 adet combobox için de
kullanabilmek.. (maksat işi kısa tutmak)

ComboBox1.RowSource = "Sayfa1!C51:C700"
ComboBox1.Style = fmStyleDropDownCombo
ComboBox1.Text = Range("Sayfa1!C51")
 
:cool:
Kod:
For i = 1 To 5
    Controls("Combobox" & i).RowSource = "Sayfa1!C51:C700"
    Controls("Combobox" & i).Style = fmStyleDropDownCombo
    Controls("Combobox" & i).Text = Range("Sayfa1!C51")
Next i
 
Kod:
For x = 1 To 4
Controls("Combobox" & x).RowSource = "Sayfa1!a1:a10"
Next

Örnektir.
 
Son düzenleme:
Çok değerli hocam Sn.Evren Bey'e teşekkürlerimi sunar, hayırlı ramazanlar dilerim.. (bu şekil çok pratik olacak..)
 
Ayrıca (yeni farkettim) Sn.Rakkas hocama da da çok teşekkür ediyorum.. İki farklı yol öğrenmiş old.. Hayırlı iftarlar diliyorum..
 
Değerli arkadaşlar..! Sonradan da olsa, yeni bir başlık açmadan sorma ihtiyacı hissettim.. Şöyleki;

Yukarıda Evren Bey'in verdiği kodlara göre;
Eğer combobox nesneleri yukarıdaki gibi ardışık olmaz ise, (örn.combobox2,4,5,7,9 gibi) olmuş olsa,
O zaman comboboxları tek makroya bağlamanın yolu var mı..!

Bilgilendirirseniz memnun olurum..Şimdiden teşekkürler..
 
Değerli arkadaşlar..! Sonradan da olsa, yeni bir başlık açmadan sorma ihtiyacı hissettim.. Şöyleki;

Yukarıda Evren Bey'in verdiği kodlara göre;
Eğer combobox nesneleri yukarıdaki gibi ardışık olmaz ise, (örn.combobox2,4,5,7,9 gibi) olmuş olsa,
O zaman comboboxları tek makroya bağlamanın yolu var mı..!

Bilgilendirirseniz memnun olurum..Şimdiden teşekkürler..
O zaman comboboxların tag özelliğini kullanmak aklıma geliyor.
Listelenecek comboboxların taglarına ardışık numara vererk sorun çözülür kanaatindeyim.Yani comboboxların isimlerifarklı olsa bile tagları ardışık olmalı.
 
Veya o ardışık olmayan comboboxları bir frame içine alıp gruplandırmak gerekir.:cool:
 
Buda kodları.Tag larına 1 den 5e kadar değer veriniz
Kod:
Dim cmb As Control
For Each cmb In Controls
    If TypeName(cmb) = "ComboBox" And IsNumeric(cmb.Tag) Then
        If CInt(cmb.Tag) >= 1 And CInt(cmb.Tag) <= 5 Then
            cmb.RowSource = "Sayfa1!C51:C700"
            cmb.Style = fmStyleDropDownCombo
            cmb.Text = Range("Sayfa1!C51")
        End If
    End If
Next
 
&#199;ok de&#287;erli hocam Sn. Evren Gizlen konuyu &#231;ok iyi anlad&#305;m, size ne kadar te&#351;ekk&#252;r etsem azd&#305;r.. ve size &#246;m&#252;r boyu sa&#287;l&#305;k ve ba&#351;ar&#305; diliyorum..
 
Çok değerli hocam Sn. Evren Gizlen konuyu çok iyi anladım, size ne kadar teşekkür etsem azdır.. ve size ömür boyu sağlık ve başarı diliyorum..
Rica ederim.
Ayni dilekleri bende sizin için diliyorum.:cool:
 
Geri
Üst