Bir butona 2 makro

Katılım
2 Nisan 2008
Mesajlar
60
Excel Vers. ve Dili
2003 TÜRKÇE
Altın Üyelik Bitiş Tarihi
25.05.2019
Selam arkadaşlar,
Tabloma bir buton koydum.
Butona basınca A makrosu
tekrar aynı butona basınca B makrosu çalışması lazım
Yani butona her tıklandığında A ile B makrosu arasında dögü yapsın.
Teşekkürler....
 

Haluk

𐱅𐰇𐰼𐰚
Katılım
7 Temmuz 2004
Mesajlar
12,310
Excel Vers. ve Dili
64 Bit 2010 - İngilizce
+
Google Sheets
+
JScript
Altın Üyelik Bitiş Tarihi
Kod:
Dim myCheck As Boolean
'
Sub Test()
    myCheck = Not myCheck
    
    If myCheck = True Then
        Call MacroA
    Else
        Call MacroB
    End If
End Sub

Sub MacroA()
    MsgBox "A"
End Sub

Sub MacroB()
    MsgBox "B"
End Sub
.
 
Katılım
2 Nisan 2008
Mesajlar
60
Excel Vers. ve Dili
2003 TÜRKÇE
Altın Üyelik Bitiş Tarihi
25.05.2019
Haluk hocam
kodu denedim her tıklamada A veriyor . Oysa ilk tıklama A ikinci tıklamada da B olması lazım
ve yine aynı döngü devam edecek...
Yanlış bir şey mi yaptım, yoksa ben mi anlatamadım bilemedim
Teşekkürler
 
Katılım
1 Şubat 2021
Mesajlar
18
Excel Vers. ve Dili
2007 Türkçe
Tablonuza koyduğunuz buton muhtemelen "Düğme (Form Düğmesi)"
Bunun yerine "Onay Kutusu (Form Denetimi)" yani "Check" butonu koyup,
Haluk Hocanın Test() makrosunu atarsanız istediğiniz olacaktır.
 

Korhan Ayhan

Administrator
Yönetici
Admin
Katılım
15 Mart 2005
Mesajlar
41,523
Excel Vers. ve Dili
Microsoft 365 Tr-En 64 Bit
Büyük ihtimalle Haluk beyin önerdiği kod da "Dim..." ile başlayan deklarasyon satırını hatalı kullanmış olabilirsiniz.

Haluk beyin kodunu boş temiz bir modüle uyguladıktan sonra butona tanımlayıp denerseniz çalıştığını görebilirsiniz.

Yine de alternatif olarak kodu aşağıdaki gibi revize edip deneyebilirsiniz..

C++:
Option Explicit

Sub Test()
    Static myCheck As Boolean
    
    myCheck = Not myCheck
    
    If myCheck = True Then
        Call MacroA
    Else
        Call MacroB
    End If
End Sub

Sub MacroA()
    MsgBox "A"
End Sub

Sub MacroB()
    MsgBox "B"
End Sub
 

Haluk

𐱅𐰇𐰼𐰚
Katılım
7 Temmuz 2004
Mesajlar
12,310
Excel Vers. ve Dili
64 Bit 2010 - İngilizce
+
Google Sheets
+
JScript
Altın Üyelik Bitiş Tarihi
Benim kodda,

Dim myCheck as ....

satiri, modulun en ustunde olmasi lazim. Unuttunuz mu acaba?

.
 
Katılım
2 Nisan 2008
Mesajlar
60
Excel Vers. ve Dili
2003 TÜRKÇE
Altın Üyelik Bitiş Tarihi
25.05.2019
Korhan Ayhan ve Haluk Hocam
sizlere ayrı ayrı teşekkürlerimi sunarım.
Tavsiyeleriniz üzerine yeniden yapılandırdım.
verdiğiniz kodlar artık sorunsuz çalışıyor Sizlere minnettarım, iyi ki varsınız...
 
Katılım
2 Nisan 2008
Mesajlar
60
Excel Vers. ve Dili
2003 TÜRKÇE
Altın Üyelik Bitiş Tarihi
25.05.2019
Necdet hocam
tek butonla 2 fonksiyonun çalışması güzel olmaz mı

Bence çok güzel oldu sizlerin sayenizde
Tekrar çok teşekkürler....
 

Necdet

Moderatör
Yönetici
Katılım
4 Haziran 2005
Mesajlar
15,220
Excel Vers. ve Dili
Ofis 365 Türkçe
Merhaba,
Ya arka arkaya aynı makroyu çalıştırmanız gerekirse?
Yoksa iki ayrı makro değil istediğiniz kadar makroyu tek butona bağlamanız olası.
O yüzden :)
 

Cengiz Demir

Altın Üye
Katılım
29 Haziran 2018
Mesajlar
594
Excel Vers. ve Dili
Office 365 TR (32 Bit)
Altın Üyelik Bitiş Tarihi
05-04-2025
Sorun çözülmüş. Ama toggle butonu bu işlem için kullanılabilir miydi ?
 
Üst