Имеется форма (пока это пробный рабочий набросок)
Все TextBox на ней представляют собой массив по вертикали, т.е. в первой колонке Text1(0), Text1(1), Text1(2), во второй - Text2(0), ... и т.д. Для ограничения ввода символов в них имеется следующий код:
- Код: Выделить всё
'замена точки на запятую
Private Sub Text1_KeyPress(KeyAscii As Integer)
Select Case KeyAscii
Case 44 To 47: KeyAscii = 44
Case 48 To 57: Exit Sub
Case vbKeyBack: Exit Sub
Case Else: KeyAscii = 0
End Select
End Sub
'замена точки на запятую
Private Sub Text2_KeyPress(KeyAscii As Integer)
Select Case KeyAscii
Case 44 To 47: KeyAscii = 44
Case 48 To 57: Exit Sub
Case vbKeyBack: Exit Sub
Case Else: KeyAscii = 0
End Select
End Sub
'разрешение ввода определённых символов
Private Sub Text3_KeyPress(KeyAscii As Integer)
On Error Resume Next
Select Case KeyAscii
Case 48 To 57, 8 ' цифры 0 - 9 и <Backspace> (эти символы всегда разрешены)
Case Else
KeyAscii = 0 ' остальные символы запрещены
End Select
End Sub
Пока у меня была одна строка TextBox'ов, код работал исправно, но как только я создал массив, начались проблемы:
Подскажите, пожалуйста, как можно назначить этот код на массив TextBox'ов, чтобы не вводить его для каждого элемента массива? Предполагается массив из 15 элеметов в каждой колонке - слишком дремучий код получится.