• DİKKAT

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

Class Modül ile butonlardan sayfalara veri aktarmak

Katılım
30 Ağustos 2008
Mesajlar
677
Excel Vers. ve Dili
2010 türkçe
Merhaba arkadaşlar;

Çalışmamda aynı içerikte kod yazılı olan yaklaşık 150 civarında Buton ile textboxtaki verileri yine aynı sayıdaki sayfaların ilgili hücrelerine aktarmaktayım.

Yapmak istediğim butonlardaki aynı içerikteki bu kodları CLass Modül veya başka bir yöntem ile tek koda indirmek.

Daha detaylı açıklamayı Ekte bulunan Örnek dosyadaki UserForm üzerinde yaptım.

Yardımcı olursanız sevinirim.
 

Ekli dosyalar

Class Modül ile bir kod yazdım ancak bir yerde hata veriyor. Hatanın nedenini bulamıyorum.

Yazdığım kod şöyle
UserForm a aşağıdaki kodu yazdım
Kod:
Dim cmbt() As New Class1

Private Sub UserForm_Initialize()
    ReDim Preserve cmbt(10)
    For s = 1 To 10
    Set cmbt(s).cmbt = UserForm1.Controls("CommandButton" & s)
    Next s
End Sub

Class Modüle aşağıdaki kodu yazdım. Ancak Kırmızı ile belirtiğim "ad" kısmı hata veriyor.
"ad" yerine Sayfa1, Sayfa2...... Sayfa10 şeklinde yazdığımda kod normal çalışıyor.
"ad" sonuçta bu sayfaları belirtiyor ancak hata veriyor. Nedenini bulamadım.
Kod:
Public WithEvents cmbt As MSForms.CommandButton
Private Sub cmbt_Click()
s = Replace(cmbt.Name, "CommandButton", "")
ad = "Sayfa" & s
[COLOR="red"]ad[/COLOR].Select
[COLOR="Red"]ad[/COLOR].Cells(2, 1) = UserForm1.Controls("Textbox" & s)
[COLOR="red"]ad[/COLOR].Cells(2, 3) = UserForm1.TextBox500
End Sub
Örnek dosyam ekte
Detaylı açıklamayı Örnek dosyanın kod sayfasında yaptım.
 

Ekli dosyalar

Class Modül deki kodu aşağıdaki şekilde değştirdim düzeldi.
Kod:
Public WithEvents cmbt As MSForms.CommandButton

Private Sub cmbt_Click()
Dim s As Integer
s = Replace(cmbt.Name, "CommandButton", "")
Sheets(s).Select
Sheets(s).Cells(2, 1) = UserForm1.Controls("Textbox" & s)
Sheets(s).Cells(2, 3) = UserForm1.TextBox500
End Sub
Örnek dosya ekte
 

Ekli dosyalar

Geri
Üst