Hola Emanuel:
Para introducir numeros con decimales puedes utilizar esto, q encontre de la libreria de MSdn
Private Sub txt1_KeyPress(KeyAscii As Integer)
If Not Chr(KeyAscii) Like "[0-9,.]" Then
Select Case KeyAscii
' si es un retroceso, enter o tabulacio'n
Case vbKeyBack, vbKeyReturn, vbKeyTab
' no se hace nada
Case Else
' si no, se anula el caracter
' introducido
KeyAscii = 0
Beep
End Select
End If
End Sub
Espero que esto te sirva.