CheckBox' un eylemini butona bağlı kılmak..

EKREM1661

Altın Üye
Katılım
10 Kasım 2006
Mesajlar
1,265
Excel Vers. ve Dili
Excel-2016
Altın Üyelik Bitiş Tarihi
03-02-2026
Değerli Arkadaşlar..! Selamlar..

Forumdaki örneklerde; CheckBox işaretlendiği an makroyu çalıştırıyor,
soru:
Ekte basit bir örneği ve açıklaması görüleceği üzere; CheckBox işaretlenir ve sonra da tamam denirse makroyu çalıştırsın.. Yani, checkbox' tan istenen görev butona bağlı olsun..

Yardım ederseniz, bir konuyu daha sayenizde çözmüş olacağız..
 

Orion1

Uzman
Uzman
Katılım
1 Mart 2005
Mesajlar
22,254
Excel Vers. ve Dili
Win7 Home Basic TR 64 Bit

Ofis-2010-TR 32 Bit
Değerli Arkadaşlar..! Selamlar..

Forumdaki örneklerde; CheckBox işaretlendiği an makroyu çalıştırıyor,
soru:
Ekte basit bir örneği ve açıklaması görüleceği üzere; CheckBox işaretlenir ve sonra da tamam denirse makroyu çalıştırsın.. Yani, checkbox' tan istenen görev butona bağlı olsun..

Yardım ederseniz, bir konuyu daha sayenizde çözmüş olacağız..
Ek yok.:cool:
 

EKREM1661

Altın Üye
Katılım
10 Kasım 2006
Mesajlar
1,265
Excel Vers. ve Dili
Excel-2016
Altın Üyelik Bitiş Tarihi
03-02-2026
özür diliyorum hocam..eki unutmuşum..
 

Orion1

Uzman
Uzman
Katılım
1 Mart 2005
Mesajlar
22,254
Excel Vers. ve Dili
Win7 Home Basic TR 64 Bit

Ofis-2010-TR 32 Bit
Aşağıdaki kodları deneyiniz.:cool:
Kod:
Private Sub CommandButton1_Click()
If CheckBox1.Value = True Then
    Son = [A65536].End(3).Row
    Else
    Son = [A65536].End(3).Row + 1
End If
    Cells(Son, "A") = Son - 1

    Range("A65536").Select
    Selection.End(xlUp).Select
    ActiveCell.Offset(0, 0).Select

    ActiveCell.Offset(0, 2).Value = TextBox1.Text
    ActiveCell.Offset(0, 3).Value = TextBox2.Text
    Unload UserForm1
    
End Sub
 

Korhan Ayhan

Administrator
Yönetici
Admin
Katılım
15 Mart 2005
Mesajlar
42,646
Excel Vers. ve Dili
Microsoft 365 Tr-En 64 Bit
Selamlar,

Alternatif olarak aşağıdaki şekildede kullanabilirsiniz.

Kod:
Private Sub CommandButton1_Click()
    Son = [A65536].End(3).Row
    If CheckBox1 = True Then
    Cells(Son, "C") = TextBox1.Text
    Cells(Son, "D") = TextBox2.Text
    Else
    Cells(Son + 1, "A") = Son + 1
    Cells(Son + 1, "C") = TextBox1.Text
    Cells(Son + 1, "D") = TextBox2.Text
    End If
    Unload UserForm1
End Sub
 
Katılım
8 Eylül 2005
Mesajlar
476
Excel Vers. ve Dili
Excel 2003 - Türkçe
Selamlar,

Hocam ComboBox veri seçmiyor.
 
Katılım
8 Eylül 2005
Mesajlar
476
Excel Vers. ve Dili
Excel 2003 - Türkçe
Teşekkürler hocam. Biz de sadece CheckBox bilgisi ile yetiniriz.
 

EKREM1661

Altın Üye
Katılım
10 Kasım 2006
Mesajlar
1,265
Excel Vers. ve Dili
Excel-2016
Altın Üyelik Bitiş Tarihi
03-02-2026
Sayın Orion2 hocam ve Cost_Control hocam..! her ikinize de minnettarım ve teşekkürlerimi borç biliyorum.. sorunum çözüldü..

Şimdi konu açılmışken, biraz daha yüzsüzlük yapıp, düşünceme takılan bir soru daha sormak istedim..

Yine aynı örnekte; sayfaya aktardığım verileri tekrar combobox ile aynı textbox' lara çağırıyorum. Bu combobox' un altına yerleştirilen kod'un çok değişik yazım şekilleri ile karşılaştım, en pratik (kısa) ve her zaman sorunsuz çalışabilecek nasıl bir kod tavsiye edersiniz..
 

Korhan Ayhan

Administrator
Yönetici
Admin
Katılım
15 Mart 2005
Mesajlar
42,646
Excel Vers. ve Dili
Microsoft 365 Tr-En 64 Bit
Selamlar,

Siz kullandığınız kodu buraya ekleyin. Üzerinde yorum yapalım.
 

Orion1

Uzman
Uzman
Katılım
1 Mart 2005
Mesajlar
22,254
Excel Vers. ve Dili
Win7 Home Basic TR 64 Bit

Ofis-2010-TR 32 Bit
ComboBox'a alacağınız verileri ayni sayfada başkabirsütuna veya başka bir sayfaya yazınız.Ve verileri oradan RowSource yöntemi ile alınız.:cool:
 

EKREM1661

Altın Üye
Katılım
10 Kasım 2006
Mesajlar
1,265
Excel Vers. ve Dili
Excel-2016
Altın Üyelik Bitiş Tarihi
03-02-2026
Sn.Cost_Control hocam..!

Yukarıda; kullandığınız kodları ekleyin bakalım demiştiniz; bahsi geçen, combobox ile sayfadan ver çağırma konusunda,
ekteki örneğe basit bir ilave yaptım..

Private Sub ComboBox1_Change()

Worksheets("Sayfa1").Select
Dim ilksatir As Integer
Set tt = Range("A2:D65000").Find(what:=ComboBox1.Value, searchdirection:=xlNext, MatchCase:=False)
ilksatir = tt.Row
Set tt = Range("A2:D65000").FindPrevious(after:=Range("D65000"))
sonsatir = tt.Row
Set tt = Range(Cells(ilksatir, 1), Cells(sonsatir, 1)).Find(what:=ComboBox1.Value, searchdirection:=xlNext, MatchCase:=False)

TextBox1.Value = Cells(ilksatir, 2).Value
TextBox2.Value = Cells(ilksatir, 3).Value
TextBox3.Value = Cells(ilksatir, 4).Value

End Sub

Bu örnekte; verileri combobox'a aktarmak için, (kod ve initialize olayını kullanmadan) Properties de RowSource özelliğine atama yapılmış,
Bunun işlevlik açısından her hangi bir dezavantajı olabilirmi..
 
Son düzenleme:

EKREM1661

Altın Üye
Katılım
10 Kasım 2006
Mesajlar
1,265
Excel Vers. ve Dili
Excel-2016
Altın Üyelik Bitiş Tarihi
03-02-2026
Yorumunuz, benim takip edeceğim yol olacaktır.
 
Üst