• DİKKAT

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

Aynı Kısayol Tuşuna Birden Fazla Makto Atamak

tirEdsOuL

Altın Üye
Katılım
3 Şubat 2009
Mesajlar
326
Excel Vers. ve Dili
Microsoft 365 Tr-En 64 Bit
Merhabalar,

Kod:
Sub Ondalik()
    Selection.NumberFormat = "#,##0.00"
End Sub

Sub Ondalik_Kapat()
Selection.NumberFormat = "0"
End Sub

Sub auto_open()
Application.OnKey "^{ğ}", "Ondalik"
End Sub

Sub auto_close()
Application.OnKey "^{ğ}"
End Sub

Yukarıdkai gibi ufak bir makroya kısayol atatım, sormak istediğim ise; aynı kısayol tuşuna yani CTRL+Ğ kombinasyonuna tekrar bastığımda, aşağıdaki kodu aktif etmesini istiyorum. Yani aynı kısayol tuşuna sıralama yaptırarak, ilk bastığımda şu kodu çalıştır, ikinci bastığımda şu kodu çalıştır, üçüncü bastığımda şu kodu çalıştır gibi birşey mümkün müdür?

Kod:
Sub Ondalik_Kapat()
Selection.NumberFormat = "0"
End Sub
 
Hücrenin birine 0 değeri verirsiniz;
İlk tıklamada bu hücreyi bir artırır 1 kodu çalıştırır.
2. tıklamada bir daha artırır 2. kodu çalıştırırsınız.
3. tıklamada da 1 daha artırır 3. kodu çalıştırırsınız.
En başına da hücre değeri 3 ise 1yap dersiniz. Yoksa 1 atrır derseniz olur.
 
Maalesef bunu yapamam, çünkü makroyu eklenti haline getirip tüm çalışma kitaplarında kullanıyorum bu kısayolu. Nasıl ki, Ctrl+K varsayılan kısayolu bold yapıp tekrar Ctrl+K yaptığımda boldu kaldırıyorsa bende aynı işlemi yapmak istiyorum.
 
ToggleButton button şeklinde arama yaparsanız örnek bulabilirsiniz. Ya da örnek dosyanızı eklerseniz yardımcı olalım.
 
Kodlarınızı aşağıdaki şekilde revize edin.
Kod:
Sub Ondalik()
If Selection.NumberFormat = "#,##0.00" Then
    Selection.NumberFormat = "0"
Else
    Selection.NumberFormat = "#,##0.00"
End If

End Sub

'Sub Ondalik_Kapat()
'    Selection.NumberFormat = "0"
'End Sub

Sub auto_open()
Application.OnKey "^{ğ}", "Ondalik"
'Application.OnKey "^{ü}", "Ondalik_Kapat"
End Sub

Sub auto_close()
Application.OnKey "^{ğ}"
'Application.OnKey "^{ü}"
End Sub
 
Teşekkürler sayın askm, istediğim tam olarak buydu. Peki bunu 3. kod, 4. kod gibi arttırmamız mümkün müdür?
Örneğin, 3. kez bastığımda CTRL+ğ'ye "Selection.NumberFormat = "#,##0"" kodunu çalıştırsın gibi..
 
Aşağıdaki bulokda else if yaparak ilave edebilirsiniz.
Kod:
Sub Ondalik()
If Selection.NumberFormat = "#,##0.00" Then
    Selection.NumberFormat = "0"
Elseif Selection.NumberFormat = "#,##0" Then
     'işlem
else
    Selection.NumberFormat = "#,##0.00"
End If

End Sub
 
İlginiz için çok teşekkür ederim.
 
Rica ederim. Kolay gelsin.
 
Geri
Üst