Вопрос № 40216: Доброго Вам настроения Уважаемые Эксперты.
Создаю проверку для ввода данных на листе Excel. Поместил на лист TextBox. Не подскажете как средствами VBA можно создать множество из символов, при нажатии на клавишу будет записываться значение в перем...
Вопрос № 40.216
Доброго Вам настроения Уважаемые Эксперты.
Создаю проверку для ввода данных на листе Excel. Поместил на лист TextBox. Не подскажете как средствами VBA можно создать множество из символов, при нажатии на клавишу будет записываться значение в переменную, потом проверять есть такой символ в множестве? В Паскале нашел как это можно сделать, а в VBA не могу разобраться.
Отправлен: 13.04.2006, 17:49
Вопрос задал: Евгений (статус: Посетитель)
Всего ответов: 2 Мини-форум вопроса >>> (сообщений: 0)
Отвечает: EPDSota
Здравствуйте, Евгений!
'один из вариантов, поместить символы в строку - например
Dim str, char
str = "" 'очищаем строку или создаем начальный набор символов (например str="abc")
char = "t" 'искомый символ
If (InStr(char, str, vbTextCompare) = 0) Then
'символа не найдено, добавляем его в строку
str = str + char
else
'символ найден делаем что-то другое
endif
--------- Открыть глаза навстречу солнцу
Ответ отправил: EPDSota (статус: Специалист)
Ответ отправлен: 13.04.2006, 18:13 Оценка за ответ: 5 Комментарий оценки: Спасибо.
Отвечает: Genyaa
Здравствуйте, Евгений!
На сколько я понял вопрос, требуется, чтобы в процессе ввода текста в TextBox каждый следующий вводимый символ проверялся, входит ли он в набор допустимых символов.
Если так, то к созданному TextBox (у меня TextBox1) нужно приписать обработчик события, реагирующий на изменение значения TextBox'а, например, такой, как я привел в Приложении.
Чтобы войти в режим, где можно приписать к TextBox обработчик событий, достаточно в режиме конструктора (нажата кнопка с голубым треугольничком) выделить TextBox, нажать правую клавишу мыши и перейти по Исходный текст. В открышееся окно можно скопировать код из приложения. Нужно только проследить, чтобы имя Вашего TextBox'а совпадало с используемым в коде.
Приложение:
--------- Всякое решение плодит новые проблемы.
Ответ отправил: Genyaa (статус: 3-ий класс)
Ответ отправлен: 13.04.2006, 18:39 Оценка за ответ: 5 Комментарий оценки: Этот вариант мне более подходит. Спасибо.