• DİKKAT

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

Döngü kodu kısaltmak

  • Konbuyu başlatan Konbuyu başlatan macay
  • Başlangıç tarihi Başlangıç tarihi
Katılım
27 Ekim 2006
Mesajlar
119
Excel Vers. ve Dili
excel 2007-Türkçe
Sayın Üstadlar,
Aşağıdaki gibi bir döngüm var ve 20 makina için bu şekilde kullanıyorum bu kodu en kısa nasıl yazabilirim.

Saygılarımla,
Kod:
'Makina Seçimi

Set sayfa = Worksheets("Makinalar") 'tanımladığım sayfanın adını set ettim
For Each HareketAlan In sayfa.Range("ExtMak") 'Tanımladığım hareketalan alanını tanımladım bu "urunler" sayfasında UrunBskszRulo adlı bir aralık
With Me.CboMakNo1 'bu alanı combo box ile getir dedim
.AddItem HareketAlan.Value ' item olarak seçeceklerin hareketalan değerleri dedim
CboMakNo1.Style = fmStyleDropDownList 'listedeki değerden başka girilemez
End With
Next HareketAlan

For Each HareketAlan In sayfa.Range("ExtMak") 'Tanımladığım hareketalan alanını tanımladım bu "urunler" sayfasında UrunBskszRulo adlı bir aralık
With Me.CboMakNo2 'bu alanı combo box ile getir dedim
.AddItem HareketAlan.Value ' item olarak seçeceklerin hareketalan değerleri dedim
CboMakNo2.Style = fmStyleDropDownList 'listedeki değerden başka girilemez
End With
Next HareketAlan

For Each HareketAlan In sayfa.Range("ExtMak") 'Tanımladığım hareketalan alanını tanımladım bu "urunler" sayfasında UrunBskszRulo adlı bir aralık
With Me.CboMakNo3 'bu alanı combo box ile getir dedim
.AddItem HareketAlan.Value ' item olarak seçeceklerin hareketalan değerleri dedim
CboMakNo3.Style = fmStyleDropDownList 'listedeki değerden başka girilemez
End With
Next HareketAlan

For Each HareketAlan In sayfa.Range("ExtMak") 'Tanımladığım hareketalan alanını tanımladım bu "urunler" sayfasında UrunBskszRulo adlı bir aralık
With Me.CboMakNo4 'bu alanı combo box ile getir dedim
.AddItem HareketAlan.Value ' item olarak seçeceklerin hareketalan değerleri dedim
CboMakNo4.Style = fmStyleDropDownList 'listedeki değerden başka girilemez
End With
Next HareketAlan

For Each HareketAlan In sayfa.Range("ExtMak") 'Tanımladığım hareketalan alanını tanımladım bu "urunler" sayfasında UrunBskszRulo adlı bir aralık
With Me.CboMakNo5 'bu alanı combo box ile getir dedim
.AddItem HareketAlan.Value ' item olarak seçeceklerin hareketalan değerleri dedim
CboMakNo5.Style = fmStyleDropDownList 'listedeki değerden başka girilemez
End With
Next HareketAlan

For Each HareketAlan In sayfa.Range("ExtMak") 'Tanımladığım hareketalan alanını tanımladım bu "urunler" sayfasında UrunBskszRulo adlı bir aralık
With Me.CboMakNo6 'bu alanı combo box ile getir dedim
.AddItem HareketAlan.Value ' item olarak seçeceklerin hareketalan değerleri dedim
CboMakNo6.Style = fmStyleDropDownList 'listedeki değerden başka girilemez
End With
Next HareketAlan

For Each HareketAlan In sayfa.Range("ExtMak") 'Tanımladığım hareketalan alanını tanımladım bu "urunler" sayfasında UrunBskszRulo adlı bir aralık
With Me.CboMakNo7 'bu alanı combo box ile getir dedim
.AddItem HareketAlan.Value ' item olarak seçeceklerin hareketalan değerleri dedim
CboMakNo7.Style = fmStyleDropDownList 'listedeki değerden başka girilemez
End With
Next HareketAlan

For Each HareketAlan In sayfa.Range("ExtMak") 'Tanımladığım hareketalan alanını tanımladım bu "urunler" sayfasında UrunBskszRulo adlı bir aralık
With Me.CboMakNo8 'bu alanı combo box ile getir dedim
.AddItem HareketAlan.Value ' item olarak seçeceklerin hareketalan değerleri dedim
CboMakNo8.Style = fmStyleDropDownList 'listedeki değerden başka girilemez
End With
Next HareketAlan
 
Syn. Macay;
Aşağıdaki kodu denermisiniz.
Kod:
'Makina Seçimi
Set sayfa = Worksheets("Makinalar") 'tanımladığım sayfanın adını set ettim
For Each HareketAlan In sayfa.Range("ExtMak") 'Tanımladığım hareketalan alanını tanımladım bu "urunler" sayfasında UrunBskszRulo adlı bir aralık
[COLOR="Blue"]For i = 1 To 20[/COLOR]
[COLOR="Blue"]With Me.Controls("CboMakNo" & i)[/COLOR] 'bu alanı combo box ile getir dedim
.AddItem HareketAlan.Value ' item olarak seçeceklerin hareketalan değerleri dedim
[COLOR="Blue"]Me.Controls("CboMakNo" & i).Style [/COLOR]= fmStyleDropDownList 'listedeki değerden başka girilemez
[COLOR="Blue"]Next i[/COLOR]
End With
Next HareketAlan
 
İlginize çok teşekkür ederim, Next i satırında hata verdi
Kod:
Private Sub UserForm_Initialize() 'form açılırken olan olaylar




Dim HareketAlan As Range 'Range ile bir aralık tanımladım ve ona hareketalan dedim
Dim sayfa As Worksheet 'kolaylık olsun diye worksheet yerine sayfa tanımladım

Me.TxtTarih.Value = Format(Date - 1, "Short Date") 'tarihten bir önceki gün gelir

'Personel Seçimi

Set sayfa = Worksheets("Personel") 'tanımladığım sayfanın adını set ettim
For Each HareketAlan In sayfa.Range("EksPer") 'Tanımladığım hareketalan alanını tanımladım bu "urunler" sayfasında UrunBskszRulo adlı bir aralık
With Me.CboPer 'bu alanı combo box ile getir dedim
.AddItem HareketAlan.Value ' item olarak seçeceklerin hareketalan değerleri dedim
CboPer.Style = fmStyleDropDownList 'listedeki değerden başka girilemez
End With
Next HareketAlan



'Makina Seçimi

Set sayfa = Worksheets("Makinalar") 'tanımladığım sayfanın adını set ettim
For Each HareketAlan In sayfa.Range("ExtMak") 'Tanımladığım hareketalan alanını tanımladım bu "urunler" sayfasında UrunBskszRulo adlı bir aralık
For i = 1 To 20
With Me.Controls("CboMakNo" & i) 'bu alanı combo box ile getir dedim
.AddItem HareketAlan.Value ' item olarak seçeceklerin hareketalan değerleri dedim
Me.Controls("CboMakNo" & i).Style = fmStyleDropDownList 'listedeki değerden başka girilemez
Next i
End With
Next HareketAlan
 
Syn. Macay;
Ufak bir düzeltme yaptım, Next i' bir alt satıra aldım denermisiniz.
Kod:
Private Sub UserForm_Initialize() 'form açılırken olan olaylar




Dim HareketAlan As Range 'Range ile bir aralık tanımladım ve ona hareketalan dedim
Dim sayfa As Worksheet 'kolaylık olsun diye worksheet yerine sayfa tanımladım
Dim i
Me.TxtTarih.Value = Format(Date - 1, "Short Date") 'tarihten bir önceki gün gelir

'Personel Seçimi

Set sayfa = Worksheets("Personel") 'tanımladığım sayfanın adını set ettim
For Each HareketAlan In sayfa.Range("EksPer") 'Tanımladığım hareketalan alanını tanımladım bu "urunler" sayfasında UrunBskszRulo adlı bir aralık
With Me.CboPer 'bu alanı combo box ile getir dedim
.AddItem HareketAlan.Value ' item olarak seçeceklerin hareketalan değerleri dedim
CboPer.Style = fmStyleDropDownList 'listedeki değerden başka girilemez
End With
Next HareketAlan



'Makina Seçimi

Set sayfa = Worksheets("Makinalar") 'tanımladığım sayfanın adını set ettim
For Each HareketAlan In sayfa.Range("ExtMak") 'Tanımladığım hareketalan alanını tanımladım bu "urunler" sayfasında UrunBskszRulo adlı bir aralık
For i = 1 To 20
With Me.Controls("CboMakNo" & i) 'bu alanı combo box ile getir dedim
.AddItem HareketAlan.Value ' item olarak seçeceklerin hareketalan değerleri dedim
Me.Controls("CboMakNo" & i).Style = fmStyleDropDownList 'listedeki değerden başka girilemez
End With

Next i

Next HareketAlan
 
Sayın YnmCany,

İlginize çok teşekkür ederim, çok güzel çalıştı beni en az 200 satırdan kurtardınız, Başarılar dilerim

Saygılarımla,
 
Geri
Üst