This is your code with just a few changes. I will note that there were errors in your code.
Adding other textbox .KeyPress events to the method declaration will take care of your requirement. Notice the first line where the sender is Cast to a generic textbox instance that is used throughout the method.
Private Sub TxtBoxGeneric_KeyPress(sender As Object,
e As KeyPressEventArgs) Handles TxtLatShift.KeyPress, TxtOTHER.KeyPress
Dim TxtBox As TextBox = DirectCast(sender, TextBox) ' <<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
Dim TargetChr As String
Dim MyPos As String
TargetChr = e.KeyChar
MyPos = InStr(TxtBox.Text, TargetChr)
Select Case TargetChr
Case "-"
'Allow only one negative symbol
If TxtBox.Text.Length < 1 Then e.Handled = False Else e.Handled = True
Case "."
'If no character is present this places a "0" before the decimal
If TxtBox.Text = "" Then 'Check if the textbox is empty
TxtBox.Text = "0" 'Insert a "0" if blank
ElseIf TxtBox.Text = "-" Then 'Check if the textbox contains a negative
TxtBox.Text = "-0" 'Insert a "-0" if no other number present
End If
'Check for existing decimal point and if found reject extras
If MyPos > 0 Then e.Handled = True Else e.Handled = False
Case 0
'prevent zeros as the first character unless followed by the decimal point
If TxtBox.Text = "0" Then 'Check if there is a zero at the start
e.Handled = True 'If so then prevent further zeros
ElseIf TxtBox.Text = "-0" Then 'Check if there is a negative zero at the start
e.Handled = True 'If so then prevent further zeros
End If
Case 1 To 9
If TxtBox.Text = "0" Then
TxtBox.Text = ""
ElseIf TxtBox.Text = "-0" Then
TxtBox.Text = "-"
End If
e.Handled = False
Case ControlChars.Back
e.Handled = False
Case Else
e.Handled = True
End Select
'Move the cursor to the end of the text. After this the keystroke inserts the number
TxtBox.Select(TxtBox.Text.Length, 0)
End Sub