• DİKKAT

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

Textbox sürekli aktif olsun

Katılım
10 Ocak 2019
Mesajlar
57
Excel Vers. ve Dili
Microsoft Office 2019
Türkçe
Merhaba
Textboxa entera basınca işlem yapıp textboxtan çıkış yapıyor. Ama ben textboxa enterlayınca çıkış yapsın istemiyorum sürekli metin girmek için altif olmasını istiyorum hangi kodu yazabilirim
 
Entera basınca çıkmayıp alt satıra mı geçirmek istiyorsunuz?
 
Merhaba

Shift + Enter
Ctrl + Enter
Alt + Enter
Bunlardan herhangi birini kullanabilirsiniz.
 
Textbox özelliği keydown da işlem yapıyorum if keycode 13 kodunu kullandım. Textbox1 de enterlayınca listboxa verileri aktarıyor onda sorun yok ama ben textbox1 sürekli metin girmek için aktif olsun istiyorum yazıp enterlayınca tekrar textbox1 de kalıp metin girmek için hazır olsun istiyorum. Anlatabildim mi bilmiyorum ama
 
Keypress kullanabilirsiniz.

Kod:
Private Sub TextBox1_KeyPress(ByVal KeyAscii As MSForms.ReturnInteger)
    If KeyAscii = 13 Then
        MsgBox "Shift + Entere bastınız."
    ElseIf KeyAscii = 10 Then
        MsgBox "Ctrl + Entere bastınız."
    End If
End Sub
 
Malesef istediğim gibi olmadı textboxta kalmıyor direkt optionbutton1 e geçiyor.
 
Aslında oluyor ama sizde farklı bir durum daha var sanırım.
Bir de aşağıdaki kodu deneyin.
İkinci Entere basışınızda TextBoxa geri döner.

Kod:
Private Sub OptionButton1_KeyDown(ByVal KeyCode As MSForms.ReturnInteger, ByVal Shift As Integer)
    TextBox1.SetFocus
End Sub

Bu da olmazsa dosyanız ekleyin kontrol edelim.
Dosyanızı dosya.tc gibi bir siteye ekleyebilirsiniz.
 
Deneyiniz.

C++:
Private Sub TextBox1_KeyDown(ByVal KeyCode As MSForms.ReturnInteger, ByVal Shift As Integer)
    If KeyCode = 13 Then
        Sayfa1.Range("A1") = UserForm1.TextBox1.Text
        UserForm1.TextBox1.Text = ""
        SendKeys "+{TAB}", True
    End If
End Sub
 
Korhan bey verdiğiniz kodu kullandım ama hem numlook kapanıyor hemde sanki entera otomatik basıyor. Buna nasıl çözüm bulabiliriz
 
Numlock için bu kodu bulmuştum. Bende işe yarıyor.

Kod:
#If Win64 Then
    Private Declare PtrSafe Function GetKeyState Lib "user32" (ByVal nVirtKey As Long) As Long
#Else
    Private Declare Function GetKeyState Lib "user32" (ByVal nVirtKey As Long) As Long
#End If

    Function GetNumlock() As Boolean
      'Return the NumLock Value
      GetNumlock = CBool(GetKeyState(vbKeyNumlock) And 1)
    End Function

Sub Numlock_Ac()
If GetNumlock() Then

  Else
  Application.SendKeys "{NUMLOCK}"
  End If
End Sub
 
Numlock için bu kodu bulmuştum. Bende işe yarıyor.

Kod:
#If Win64 Then
    Private Declare PtrSafe Function GetKeyState Lib "user32" (ByVal nVirtKey As Long) As Long
#Else
    Private Declare Function GetKeyState Lib "user32" (ByVal nVirtKey As Long) As Long
#End If

    Function GetNumlock() As Boolean
      'Return the NumLock Value
      GetNumlock = CBool(GetKeyState(vbKeyNumlock) And 1)
    End Function

Sub Numlock_Ac()
If GetNumlock() Then

  Else
  Application.SendKeys "{NUMLOCK}"
  End If
End Sub

Bu kodu nereye yazacağız. Yardımcı olabilirmisiniiz
 
Verdiğiniz adresi inceledim. insert modülden modül açıp yapıştırdım. Modülün çalışması için oluşturulan sub ı (Numlock_Ac ) yi nereye yapıştırıp tetiklenmesini sağlayacağım.
sub ı (Numlock_Ac ) yi Hiçbir yere yapıştırmadan olmadı. Çünkü tetikleyecek bir şey yok ama yine de denedim. Sonra

Private Sub TextBox1_KeyDown(ByVal KeyCode As MSForms.ReturnInteger, ByVal Shift As Integer)
If KeyCode = 13 Then
Sayfa1.Range("A1") = UserForm1.TextBox1.Text
UserForm1.TextBox1.Text = ""
SendKeys "+{TAB}", True
End If
End Sub
Komutunun içine end if in altına yapıştırdım. Olmadı.
 
Uyguladığınız örnek dosyanızı paylaşın inceleyelim.
 
Dosya paylaşmaya uğraşıyorsanız harici dosya barındırma sitelerini kullanarak örnek dosya paylaşımı yapabilirsiniz.
 
Geri
Üst