Студопедия

КАТЕГОРИИ:


Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748)

Пример программы поиска и удаления записей




Пример программы поиска и редактирования записей

Требуется создать процедуру поиска записей в таблице Студенты учебной базы данных. Поиск осуществляется по фамилии студента, значение которой вводится с клавиатуры. Если записи найдены, то значение фамилии студентов изменяются на другую, вводимую с клавиатуры. Если подобных записей нет, то сообщение об этом не выводится.

 

'Работа с записями таблицы - поиск и редактирование

Sub редактирование()

Dim База, Запись As Variant

Set База = CurrentDb 'семейство объектов текущей базы данных

Set Запись = База.OpenRecordSet("Студенты")

'открытие набора записей текущей базы данных

Do Until Запись.EOF = True

'Свойство "End of File" - признак конца файла

If Запись![Фамилия].Value = InputBox ("Введите _

искомую фамилию") Then

Запись.Edit

'метод блокирует запись и разрешает обновление полей записи

Запись![Фамилия].Value = InputBox ("Введите _

новую фамилию")

Запись.Update 'метод сохраняет изменения полей записи

MsgBox Запись![Фамилия].Value

End If

Запись.MoveNext 'метод перехода к следующей записи

Loop

End Sub

 

Требуется создать процедуру поиска и удаления записей в таблице Студенты учебной базы данных. Поиск осуществляется по фамилии студента, значение которой вводится с клавиатуры. Если записи найдены, то выводится фамилия, имя, отчество студента и номер группы, после чего спрашивается разрешение пользователя на удаление этой записи. Если подобных записей нет, то выводится сообщение об этом.

 

'Последовательный поиск по фамилии и удаление

'Программа не проверяет корректность введенной с клавиатуры 'фамилии

Sub удаление()

Dim База, Запись As Variant

Dim p As String * 20, признак As Boolean, удаление As Byte

Set База = CurrentDb

Set Запись = База.OpenRecordSet("Студенты")

признак = False 'признак характеризует хотя бы одну найденную 'запись

p = InputBox("Введите фамилию", "Поиск и удаление")

If RTrim(p) = Empty Then Exit Sub

With Запись

Do Until Запись.EOF = True

If RTrim(![Фамилия].Value) = RTrim(p) Then

признак = True

удаление = MsgBox(RTrim(![Фамилия].Value) & " "

& RTrim(![Имя]) & " " & RTrim(![Отчество]) _

& " " &![КодСпециальности] & "-" &![Курс] _

&![Группа], vbYesNoCancel + vbQuestion, _

"Удалить запись?")

Select Case удаление

Case vbYes

MsgBox RTrim(p) & " отчислен(а)!", vbCritical

.Delete

Case vbNo

MsgBox "Ура! Не отчислили!", vbExclamation

Case vbCancel

Exit Sub

End Select

End If

.MoveNext 'метод перехода к следующей записи

Loop

If признак = False Then MsgBox "Записи с фамилией " _

& RTrim(p) & " отсутствуют"

.Close

End With

End Sub

 




Поделиться с друзьями:


Дата добавления: 2014-11-29; Просмотров: 293; Нарушение авторских прав?; Мы поможем в написании вашей работы!


Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет



studopedia.su - Студопедия (2013 - 2024) год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! Последнее добавление




Генерация страницы за: 0.008 сек.