|
Вставка списка и его валидация
|
|||
---|---|---|---|
#18+
Добрый день! Стоит такая задача: пользователи берут у нас пустой шаблон таблички в Excel, вводят туда список сотрудников, отдают нам и мы загружаем этот список в программу. Необходима валидация для столбцов номер, серия паспорт, дата рождения, пол, номер телефона и пр. Настроил форматы ячеек, валидацию для ячеек на вкладке "Data", защитил изменение заголовков самой таблицы. Теперь при вводе руками ругается на неверные данные, вроде даже ок. Однако, как чаще бывает, если копировать из другого экзеля сразу целые диапазоны то все слетает - и форматы и валидация (копируется вместе с форматом). В экзеле не силен, сейчас раскуриваю документацию, но пока не понятно как лучше сделать. Вопрос: как решаются такие задачи, в какую сторону копать? У меня сейчас такая идея есть - думаю надо написать макрос который будет валидировать данные по сохранению файла/ после вставки данных. Но может все проще можно сделать... ... |
|||
:
Нравится:
Не нравится:
|
|||
07.11.2012, 10:57 |
|
Вставка списка и его валидация
|
|||
---|---|---|---|
#18+
evgeny_lenkevichкак решаются такие задачи, в какую сторону копать? Защитой листа, VBA, использованием СУБД и т.д. ... |
|||
:
Нравится:
Не нравится:
|
|||
07.11.2012, 11:15 |
|
Вставка списка и его валидация
|
|||
---|---|---|---|
#18+
evgeny_lenkevichкак решаются такие задачи Например созданием формы ввода и проверки формата каждого введённого поля. С программным помещением данных в таблицу. ... |
|||
:
Нравится:
Не нравится:
|
|||
07.11.2012, 11:16 |
|
Вставка списка и его валидация
|
|||
---|---|---|---|
#18+
Serge 007Защитой листа, VBA, использованием СУБД и т.д. Раскуриваю VBA, тут без него никак чувствую) AkinaНапример созданием формы ввода и проверки формата каждого введённого поля. С программным помещением данных в таблицу. Ясно, но, так понимаю, через форму ввода придется заводить каждую запись. Хорошо бы дать возможность пользователю копировать сразу много записей в нашу таблицу. В таблице может быть много строк, до тысячи. ... |
|||
:
Нравится:
Не нравится:
|
|||
07.11.2012, 11:33 |
|
Вставка списка и его валидация
|
|||
---|---|---|---|
#18+
evgeny_lenkevichХорошо бы дать возможность пользователю копировать сразу много записей в нашу таблицу. Хорошо бы сразу формулировать ВСЮ задачу, а не какой-то её оглодок. На той же форме никто не запрещает разместить кнопку "Принять записи из буфера обмена" и в пакетном режиме провести валидацию с сортировкой - правильные вставить, уже имеющиеся в таблице дубликаты отсеять, некорректные подать на корректировку. Есть ещё вариант - пусть заливают в файт всё, что заблагорассудится, а модулем выполнять проверку введённого и помечать (например, цветом) ячейки, данные в которых не прошли валидацию. В любом случае это VBA. А форматы ячеек - выбрось это из головы, ерунда это, и влияет не на данные, а только на их отображение на экране... ... |
|||
:
Нравится:
Не нравится:
|
|||
07.11.2012, 12:22 |
|
Вставка списка и его валидация
|
|||
---|---|---|---|
#18+
Прощу прощения за кривую формулировку задачи) Akina Есть ещё вариант - пусть заливают в файт всё, что заблагорассудится, а модулем выполнять проверку введённого и помечать (например, цветом) ячейки, данные в которых не прошли валидацию. В любом случае это VBA. А форматы ячеек - выбрось это из головы, ерунда это, и влияет не на данные, а только на их отображение на экране... Думаю этот вариант самый подходящий, попробую так и сделать, спасибо! ... |
|||
:
Нравится:
Не нравится:
|
|||
07.11.2012, 12:49 |
|
|
start [/forum/topic.php?fid=61&msg=38028093&tid=2175242]: |
0ms |
get settings: |
12ms |
get forum list: |
14ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
32ms |
get topic data: |
11ms |
get forum data: |
3ms |
get page messages: |
47ms |
get tp. blocked users: |
1ms |
others: | 311ms |
total: | 439ms |
0 / 0 |