Public Function УдСопр_KeyPress(KeyAsc As Integer, Str_Text as String ) As string
Dim Str_Return as string
Select Case KeyAscii
Case 8, 48 To 57 ' <Backspace> и цифры
Str_Return = str(KeyAsc)
Case 44, 46 ' запятая (44) и точка (46)
If Len(Str_Text ) = 0 Then
' запятая не может быть первым сиволом
Str_Return = ""
Else
If KeyAsc = 46 Then
' заменим точку запятой
Str_Return = ","
End If
' проверим, введена ли запятая
If InStr(1, УдСопр.Text, ",") <> 0 Then
' запятая уже введена
' вторая не нужна
Str_Return = ""
End If
End If
Case Else
' прочие символы запрещены
Str_Return = ""
End Select
УдСопр_KeyPress = Str_Return
End Sub
|