Rambler's Top100
Форум: MS ACCESSVBVBA MS OfficeMS SQL server
Новые сообщения: 0000

Форум: MS ACCESS

Вопросы связанные с MS ACCESS

Обновить визитку
Участники «Online»
Все участники

 
 

Доброго времени суток, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: VBA - ввод новой не повторяющейся запис
 
 автор: KAV   (04.12.2008 в 17:21)   личное сообщение
 
 

У меня такая проблема. Есть таблица 1 столбец - фамилия 2 -имя 3 - отчество. Как сделать так, чтобы при вводе новой ФИО(есть форма ФИО и при помощи другой формы я добовляю в неё новые данные) при условии, что уже имеется такая ФИО в базе, мне выводилось бы сообщение, что типа уже такая запись есть. Т.е. какая функция за это отвечает

  Ответить  
 
 автор: shaucha   (04.12.2008 в 17:26)   личное сообщение
 
 

1) зачем Вам 2 формы?
2) а разве не может быть 2-х Ивановых Петров Васильевичей?

  Ответить  
 
 автор: KAV   (04.12.2008 в 17:31)   личное сообщение
 
 

при помощи второй я просто ввожу новую запись в форму ФИО. Мне нужно сделать так что если я ввожу Ивновых Петровых Василевичей и такой уже есть в базе мне выдавалось сообщение что такая запись уже есть

  Ответить  
 
 автор: shaucha   (04.12.2008 в 17:40)   личное сообщение
 
 

Так Вам не ткритично каким именно образом будет реализована такая возможность?
Или сообщение обязательно?

Вариантов много. НУ может я просто не знаю какого-нибудь особенного способа, применяемого в данной ситуации...

Иногда, чтобы избежать повторений при ручном вводе, я поля таблиц делаю выпадающим списком, с источником данных сам-на-себя... тогда при вводе Ива* (например) будет выпадать список со всеми фамилиями начинающимися на Ива* и оператор либо выберет нужную, либо напишет новую, если совпадений не найдет...

А для чего 2 формы, я все равно не понимаю...

  Ответить  
 
 автор: shaucha   (04.12.2008 в 17:50)   личное сообщение
 
 

но это не то, что Вам нужно )))

  Ответить  
 
 автор: KAV   (04.12.2008 в 18:01)   личное сообщение
 
 

Выпадающий список, с источником данных сам-на-себя, до ентого я не додумался. Спасибо ща попробовал всё работкает.
По поводу 2 форм :
у меня есть форма с информацией о сотруднике и несколько столбцов
1. фамилия
2. имя
3. отчество
4. должность
5. звание
в виде ленточной формы. В эту таблицу я не могу добавить данные, не могу изменить их. Но при помощи контекстного меню, либо при помощи своей собственной панели инструментов, либо при помощи кнопочки я вывожу новую форму, в которой есть все теже поля, что и в главной таблице т. е.
1. фамилия
2. имя
3. отчество
4. должность
5. звание
но в одном экземпляре. Я забивая форму нужной информацией о сотруднике и нажимаю сохранить либо отменить ввод. И вся информация заноситься в главную таблицу

  Ответить  
 
 автор: osmor   (04.12.2008 в 17:52)   личное сообщение
 
 

варианты
1 .
сделать уникальный индекс по 3-м полям. в форме ловить ошибку
2.
Перед сохранением проверять наличие такой записи с помощью DlookUp или recordset и не давать сохранять

  Ответить  
 
 автор: KAV   (04.12.2008 в 18:03)   личное сообщение
 
 

эти функции, которые проверяют есть такие данные построчно или нет да?

  Ответить  
 
 автор: shaucha   (04.12.2008 в 18:55)   личное сообщение
18 Кб.
 
 

ИСПРАВЛЕННЫЙ ПРИМЕР
(вроде все работает)

  Ответить  
 
 автор: osmor   (05.12.2008 в 08:52)   личное сообщение
 
 

нет они не проверяют построчно, они возвращают значение поля или набор записей по указанному условию. см. Help по словам dlookup и Recordset

  Ответить  
 
 автор: shaucha   (05.12.2008 в 10:54)   личное сообщение
 
 

добавил пример

  Ответить  
 
 автор: kav   (05.12.2008 в 14:23)   личное сообщение
 
 

Спасибки большое - это мне и нужно было

  Ответить  
HiProg.com - Технологии программирования
Rambler's Top100 TopList