Textbox1'in içinde yukarı, aşağı tuşuna bastıkça spin buton up, down olaylarını tetik

Katılım
2 Mart 2005
Mesajlar
2,960
Excel Vers. ve Dili
ev: Ofis 2007- Win Xp
iş: Ofis 2010- Win Vista
Textbox1'in içinde yukarı, aşağı tuşuna bastıkça spin buton up, down olaylarını tetikleme mümkün müdür?

Userformmda bulunan tektbox1'in içinde iken
Klevyedeki Aşağı ok tuşuna basınca


Kod:
Private Sub SpinButton1_SpinDown()
If TextBox1 = 1 Then        'Textbox1 deki değer 1 e eşitse
    TextBox1 = 1            '1 kalsın
Else                        'Değilse
    TextBox1 = TextBox1 - 1 'Textbox1 deki değeri bir eksilt.
End If
End Sub
Yukarı ok tuşuna basınca
Kod:
Private Sub SpinButton1_SpinUp()
    TextBox1 = TextBox1 + 1 'Textbox1 deki değeri bir artır.
End Sub
spin butonlarının ilgili olaylarının tetikleyecek kod nedir?
 

Korhan Ayhan

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

Aşağıdaki kodu denermisiniz.

Kod:
Private Sub SpinButton1_SpinDown()
    If TextBox1 = 1 Then
    TextBox1 = 1
    Else
    TextBox1 = Val(TextBox1) - 1
    End If
End Sub
 
Private Sub SpinButton1_SpinUp()
    TextBox1 = Val(TextBox1) + 1
End Sub
 
Private Sub TextBox1_KeyDown(ByVal KeyCode As MSForms.ReturnInteger, ByVal Shift As Integer)
    If KeyCode = 38 Then SpinButton1_SpinUp
    If KeyCode = 40 Then SpinButton1_SpinDown
End Sub
 
Katılım
2 Mart 2005
Mesajlar
2,960
Excel Vers. ve Dili
ev: Ofis 2007- Win Xp
iş: Ofis 2010- Win Vista
korhan hocam spin buton seçili iken yukarı aşağı ok tuşları texbox içierisndeki değeri küçültüp büyültmrye yaraıyor ancak, Texbox1 seçili iken (içindeki değer seçili iken) sadece 1 değer artırıp veya azlatıp diğer kontrole geçiyor. Yani Üstte comboya altta commandabutona gidiyor.
 
Katılım
2 Mart 2005
Mesajlar
2,960
Excel Vers. ve Dili
ev: Ofis 2007- Win Xp
iş: Ofis 2010- Win Vista
Hocam dosyamız aşağıdaki linkteki eklenti.
HsrFrm_CokluYazdırma user formundaki textbox1 üzerinde yukarı şağaı tuşlarına basınca spinbuton olayları tetiklenecek,
Herhangi bir yerde entera basınca command1 olayı tetiklenirse tadından yenmeyecek (Zeki Gürsoy hocamın HsrFrm_BuyukKucukHarfDegistir userformu için tasarladığı Enter Class modülü ile bir şeyler yapmaya çalıştım ama daha çırak olmaktan kurtulamamışız."

http://cid-5f022568730f18e0.skydrive.live.com/self.aspx/Ortak/Hsr|_AddIns.rar
 

hamitcan

Uzman
Uzman
Katılım
1 Temmuz 2004
Mesajlar
7,680
Excel Vers. ve Dili
Excel 2019 Türkçe
Aşağıdaki şekilde dener misiniz?
Kod:
Private Sub TextBox1_KeyDown(ByVal KeyCode As MSForms.ReturnInteger, ByVal Shift As Integer)
    If KeyCode = 38 Then TextBox1 = Val(TextBox1) + 1: KeyCode = 0
    If KeyCode = 40 Then TextBox1 = Val(TextBox1) - 1: KeyCode = 0
End Sub
 
Katılım
2 Mart 2005
Mesajlar
2,960
Excel Vers. ve Dili
ev: Ofis 2007- Win Xp
iş: Ofis 2010- Win Vista
hocam teşekkürler aşağıdaki şekilde oldu ancak bu sefer combobox1'in içini,n değişimi engellendi.
Onuda aynı aşkilde aşağı basınca bir alttaki, değeri yukarı basınca bir üstteki değeri getirecek kod hangisidir.
 
Katılım
2 Mart 2005
Mesajlar
2,960
Excel Vers. ve Dili
ev: Ofis 2007- Win Xp
iş: Ofis 2010- Win Vista
hocam teşekkürler aşağıdaki şekilde oldu ancak bu sefer combobox1'in içini,n değişimi engellendi.
Onuda aynı aşkilde aşağı basınca bir alttaki, değeri yukarı basınca bir üstteki değeri getirecek kod hangisidir?
Kod:
Private Sub TextBox1_KeyDown(ByVal KeyCode As MSForms.ReturnInteger, ByVal Shift As Integer)
'Textboxın içinde yukarı ok tuşuna basınca değeri bir artır.
    If KeyCode = 38 Then TextBox1 = Val(TextBox1) + 1: KeyCode = 0
'Textboxın içinde aşağı ok tuşuna basınca değeri bir azalt ama değer 1 in altına düşmesin.
    If KeyCode = 40 Then
        If TextBox1 = 1 Then
            TextBox1 = 1: KeyCode = 0
        Else
            TextBox1 = Val(TextBox1) - 1: KeyCode = 0
        End If
    End If
'    If KeyCode = 13 Then CommandButton1_Click
End Sub
 
Üst