Приветствую, друзья. Подскажите, как при вводе значения в таблицу средствами VBA организовать проверку на его наличие в данных которые уже содержаться в таблице. Например: При вводе два раза одного и того же имени в одну дату- вывести предупреждение в MsgBox, что данное значение уже содержится в таблице в эту дату.
StepanWolkoff, Спасибо за вариант) Макрос потому, что проверку данных обходит вставка значения и если, например, записать сначала имя, а потом дату- проверка не увидит нарушений
Dyroff, ну тут в любом случае может быть еще несколько подводных камней, например: ввести новое имя, а затем в диапазоне выше исправить старое на такое же, значит проверку надо делать каждый раз "бегая" по всей таблице? Ну и вообще, как показывает практика пользователи очень изобретательны в создании косяков)) Поэтому нужны четкие критерии как будет вводиться и какие будут ограничения.
StepanWolkoff написал: как будет вводиться и какие будут ограничения
Вводится сначала дата - потом значение. В основном это делается методом копирования из другого справочника и вставки. Планировал повесить эту проверку на событие изменения ячейки в столбце B. Чтобы пользователь, введя два раза одинаковые значения, просто узнал об этом. Так как в реале таблице большая, по невнимательности сейчас пользователь может внести несколько одинаковых строк
StepanWolkoff написал: то скрипт пропускает и позволяет добавить дублирующее значение.
Такая ситуация исключена. У пользователя нет задачи, обмануть проверку. Просто таблицу заполняют разные люди, и второй пользователь может не заметить, что кто-то перед ним уже внес такое же значение (на 100 строк выше, например)
Нужно бежать со всех ног, чтобы только оставаться на месте, а чтобы куда-то попасть, надо бежать как минимум вдвое быстрее!
Не просто отлично, ОООЧЕНЬ отлично Проверил на 500 000 записей. Даже не моргнул, выдал результат Юрий М большое Вам спасибо
Была у меня подобная задача - выделить все дубликаты в столбце. Так я отсортировал массив и пробежал по нему один раз. Единственный тормоз - это перенос данных в массив
Во всех делах очень полезно периодически ставить знак вопроса к тому, что вы с давних пор считали не требующим доказательств (Бертран Рассел) ►Благодарности сюда◄