Jag vill ha en enterfunktion i en textruta. När man trycker <code> Hej Hej igen Jag hade inte tid att optimera. Slängde ihop koden medans jag tog på mig kläderna. Skulle köra lillasyra till affären för att handla julklappar. Hej, jag löste det så här:Enterfunktion i textruta
på enterknappen efter det att man har skrivit in värden i en textruta ska markören hoppa till nästa textruta i tabordning. Finns det någon som kan hjälpa
mvh
IvanSv: Enterfunktion i textruta
Option Explicit
Private Sub Text1_KeyPress(KeyAscii As Integer)
If KeyAscii = vbKeyReturn Then
SendKeys "{Tab}"
KeyAscii = 0
End If
End Sub
Private Sub Text2_KeyPress(KeyAscii As Integer)
If KeyAscii = vbKeyReturn Then
SendKeys "{Tab}"
KeyAscii = 0
End If
End Sub
Private Sub Text3_KeyPress(KeyAscii As Integer)
If KeyAscii = vbKeyReturn Then
SendKeys "{Tab}"
KeyAscii = 0
End If
End Sub
</code>Sv: Enterfunktion i textruta
För att optimera koden skulle man kunna skriva så här
Private Sub Text1_KeyPress(KeyAscii As Integer)
If KeyAscii = 13 Then KeyAscii =9
End Sub
tycker optimerings bö....
SvenSv: Enterfunktion i textruta
Fick problem när jag la in den tredje textrutan. Om man inte va snabb nog med enterknappen så hoppade markören till tredje textrutan.
mvh
Ivan Sv: Enterfunktion i textruta
Tänkte oxå prova det. Skrev typ:
<code>
Private Sub Text1_KeyPress(KeyAscii As Integer)
If KeyAscii = vbKeyReturn Then
KeyAscii = vbKeyTab
End If
End Sub
</code>
Det funkade inte när jag provade. Så jag körde med det jag viste fungerade.
Hoppas du kan förlåta mig för att jag svek mina ideal. ;O)Sv: Enterfunktion i textruta
Private Sub Text2_KeyPress(KeyAscii As Integer)
If KeyAscii = vbKeyReturn Then
SendKeys "{Tab}"
KeyAscii = 0
End If
End Sub
Private Sub Text2_LostFocus()
If Trim$(Text2.Text) = "" Then
Text2.SetFocus
End If
End Sub
Private Sub Text2Validate_Validate(Cancel As Boolean)
If Trim$(Text2Validate.Text) = "" Then
Cancel = True
ElseIf Len(Trim$(Text2Validate.Text)) < 3 Then
Cancel = True
End If
Debug.Print "Validate"
End Sub
Private Sub Text3_KeyPress(KeyAscii As Integer)
If KeyAscii = vbKeyReturn Then
SendKeys "{Tab}"
KeyAscii = 0
End If
End Sub
Private Sub Text3_LostFocus()
If Trim$(Text3.Text) = "" Then
Text3.SetFocus
End If
End Sub
Private Sub Text3Validate_Validate(Cancel As Boolean)
If Trim$(Text3Validate.Text) = "" Then
MsgBox "Textrutan måste vara ifylld"
Cancel = True
ElseIf Len(Trim$(Text3Validate.Text)) < 3 Then
MsgBox "Textrutan måste vara ifylld"
Cancel = True
End If
Debug.Print "Validate"
End Sub
mvh
Ivan