|
Изменение цвета поля при вводе данных
|
|||
---|---|---|---|
#18+
Здравствуйте! Ни как не могу разобраться, что я делаю не так. Мне нужна визуальная проверка вводимых значений. Когда оператор вводит данные, данные обрабатываются и, в зависимости от результата цвет ячейки меняется. Для примера сделал форму и написал такой код: Код: vbnet 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23.
Но код не работает так, как я планировал. Можно сказать, он вообще не работает. Сразу в довесок вопрос, можно ли сделать так, чтобы цвет поля менялся при вводе значения в поле, а не после обновления поля, как у меня сейчас. Пробовал писать такой же код в событие change, но это вызывало ошибку. ... |
|||
:
Нравится:
Не нравится:
|
|||
27.11.2017, 17:12 |
|
Изменение цвета поля при вводе данных
|
|||
---|---|---|---|
#18+
Валерий Зимин, проверку выполняют не на After а на BeforeUpdate (до обновления поля) Код: vbnet 1. 2. 3. 4. 5.
End Sub ... |
|||
:
Нравится:
Не нравится:
|
|||
27.11.2017, 18:56 |
|
Изменение цвета поля при вводе данных
|
|||
---|---|---|---|
#18+
sdku, Спасибо за ответ. Мне нужно, чтобы проверка была не жёсткой, но чтобы оператор видел, если есть какие-то отклонения и сам принимал решение, вносить или не вносить данные. Поэтому проблема не решена. Прикрепляю пример формы, в которой подобная логика так же не работает. ... |
|||
:
Нравится:
Не нравится:
|
|||
28.11.2017, 06:14 |
|
Изменение цвета поля при вводе данных
|
|||
---|---|---|---|
#18+
Валерий Зиминsdku, Спасибо за ответ. Мне нужно, чтобы проверка была не жёсткой, но чтобы оператор видел, если есть какие-то отклонения и сам принимал решение, вносить или не вносить данные. Поэтому проблема не решена. Прикрепляю пример формы, в которой подобная логика так же не работает. 1. Изменение цвета поля - меняет цвет всего столбца. 2. Нафига эта радуга нужна? Чать не ЛГБТ. 3. Внятный текст предупреждения в поле рядом - гораздо полезнее. ... |
|||
:
Нравится:
Не нравится:
|
|||
28.11.2017, 08:55 |
|
Изменение цвета поля при вводе данных
|
|||
---|---|---|---|
#18+
aleks222, 1) Есть какой-то другой способ определить цвет объекта? 2) ... 3) Я вроде ситуацию описал и вопрос по ней, а не спрашивал чужого мнения как лучше просигнализировать. ... |
|||
:
Нравится:
Не нравится:
|
|||
28.11.2017, 09:52 |
|
Изменение цвета поля при вводе данных
|
|||
---|---|---|---|
#18+
Условное форматирование. ... |
|||
:
Нравится:
Не нравится:
|
|||
28.11.2017, 10:02 |
|
Изменение цвета поля при вводе данных
|
|||
---|---|---|---|
#18+
Валерий Зимин, ... |
|||
:
Нравится:
Не нравится:
|
|||
28.11.2017, 10:33 |
|
Изменение цвета поля при вводе данных
|
|||
---|---|---|---|
#18+
Валерий Зимин, у Вас код некорректный - строковую переменную пытаетесь сравнивать с числами. Код: vbnet 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23.
... |
|||
:
Нравится:
Не нравится:
|
|||
28.11.2017, 10:42 |
|
Изменение цвета поля при вводе данных
|
|||
---|---|---|---|
#18+
Валерий Зимин, __MichelleУсловное форматирование. ... |
|||
:
Нравится:
Не нравится:
|
|||
28.11.2017, 10:46 |
|
Изменение цвета поля при вводе данных
|
|||
---|---|---|---|
#18+
Панург, +100500 Вам в карму! ))) Очень помогли. Но))) стал играться, добавил вывод вычисления в Immidiate window, чтобы видеть, результат и опять тот же глюк: Если Case задан интервалом (>0 <100, например), то обработка идёт только по условию >0. То есть, если я прошу выделить ячейку зелёным, а вычисление 100 или больше, ячейка всё равно зелёная. Плюс перестал обрабатываться Null. Не понимаю - это глюк или я "мистер дерево"? Обработка в реальном времени - ещё раз спасибо! ... |
|||
:
Нравится:
Не нравится:
|
|||
29.11.2017, 08:04 |
|
Изменение цвета поля при вводе данных
|
|||
---|---|---|---|
#18+
Валерий Зимин, Код: vbnet 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14.
... |
|||
:
Нравится:
Не нравится:
|
|||
29.11.2017, 13:54 |
|
Изменение цвета поля при вводе данных
|
|||
---|---|---|---|
#18+
Всем спасибо за помощь. С заданием интервалов с помощью < или > (например: >= 0 < 30) так и не разобрался (access воспринимает только первую часть условия (>=0). Плюс, для корректной работы требуется указать тип переменной (Long, Integer и т.п.). ... |
|||
:
Нравится:
Не нравится:
|
|||
14.12.2017, 09:19 |
|
Изменение цвета поля при вводе данных
|
|||
---|---|---|---|
#18+
sdku Код: vbnet 1. 2. 3. 4. 5. 6. 7. 8.
Вообще-то для этого существует Case Else. А то введёт юзер 10,0005 - и всё насмарку. ... |
|||
:
Нравится:
Не нравится:
|
|||
14.12.2017, 09:29 |
|
Изменение цвета поля при вводе данных
|
|||
---|---|---|---|
#18+
Валерий ЗиминС заданием интервалов с помощью < или > (например: >= 0 < 30) так и не разобрался (access воспринимает только первую часть условия (>=0) Код: vbnet 1.
... |
|||
:
Нравится:
Не нравится:
|
|||
14.12.2017, 09:30 |
|
Изменение цвета поля при вводе данных
|
|||
---|---|---|---|
#18+
Akina Код: vbnet 1.
Нет, такие конструкции VBA не воспринимает, увы ... |
|||
:
Нравится:
Не нравится:
|
|||
14.12.2017, 10:59 |
|
Изменение цвета поля при вводе данных
|
|||
---|---|---|---|
#18+
Вместо Cfse можно попробовать использовать и структуру If ... ElseIf ... Но там свои тонкости. Идёт последовательная проверка всех условий. ... |
|||
:
Нравится:
Не нравится:
|
|||
14.12.2017, 12:37 |
|
Изменение цвета поля при вводе данных
|
|||
---|---|---|---|
#18+
MrShinтакие конструкции VBA не воспринимает, увы Да, сорри, в VBA условия объединяются запятой, которая интерпретируется как OR. Есть смысл воспользоваться тем, что проверка условий выполняется последовательно, и одно из ограничений проверить альтернативным условием выше по тексту. Т.е. типа Код: vbnet 1. 2. 3. 4.
Jossтам свои тонкости. Идёт последовательная проверка всех условий.Так же, как и в случае Case. Различие лишь в том, что ElseIf позволяет выполнять проверку разных выражений, типа Код: vbnet 1. 2. 3.
... |
|||
:
Нравится:
Не нравится:
|
|||
14.12.2017, 13:37 |
|
Изменение цвета поля при вводе данных
|
|||
---|---|---|---|
#18+
AkinaДа, сорри, в VBA условия объединяются запятой, которая интерпретируется как OR. можно использовать case true ... |
|||
:
Нравится:
Не нравится:
|
|||
14.12.2017, 16:26 |
|
|
start [/forum/topic.php?fid=45&msg=39560378&tid=1611840]: |
0ms |
get settings: |
7ms |
get forum list: |
11ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
48ms |
get topic data: |
11ms |
get forum data: |
3ms |
get page messages: |
60ms |
get tp. blocked users: |
1ms |
others: | 15ms |
total: | 164ms |
0 / 0 |