План тестирования программы
Запуск формы. Если ничего не выбрано в Поле «Выберите последний Гран-При», программа выдает информационное сообщение «Не выбрана ни одна из гонок!» и завершает свою работу.
Папка С:\Результаты не существует: Программа выводит на экран информационное сообщение о том, что папка Результаты не найдена. Программа завершает работу.
Папка Результаты существует: Программа проверяет, есть ли в этой папке файлы вида Гран-При-{номер гонки}-{Страна}.xls.
Один или несколько из выбранных файлов Гран-При-{номер гонки}-{Страна}.xls. не существует: Программа выводит на экран информационное сообщение о том, что файл Гран-При-{номер гонки}-{Страна}.xls. не найден в Папке С:\Результаты. Программа продолжает работу с существующими файлами.
Ни один из выбранных файлов Гран-При-{номер гонки}-{Страна}.xlsне существует: Программа выводит на экран сообщение о том, что ни один из выбранных файлов не найден и что нет данных для формирования итоговых результатов. Программа завершает свою работу.
Файл Гран-При-{номер гонки}-{Страна}.xlsсуществует: Программа проверяет открыта книга Гран-При-{номер гонки}-{Страна}.xlsили закрыта.
Книга Гран-При-{номер гонки}-{Страна}.xlsзакрыта: Программа открывает файл Гран-При-{номер гонки}-{Страна}.xls.
Книга Гран-При-{номер гонки}-{Страна}.xlsоткрыта: Программа начинает работу с БД.
Папка С:\Текущие итоги для сохранения конечного файла не существует: Программа создает папку для сохранения конечного файла.
Папка С:\Текущие итоги для сохранения конечного файла существует: Программа начинает проверку существования в этой папке конечного файла с таким же названием, как сформировал пользователь.
Конечный файл не существует: Программа сохраняет сформированную таблицу в папку. Программа завершает работу.
Конечный файл с таким же названием уже существует в папке: Программа предлагает пользователю заменить существующий на данный момент в папке файл тем, который он создал только что.
Если пользователь отвечает «Да», то:
если старый файл в данный момент открыт в Excel, то Программа закрывает его без сохранения изменений (если таковые были), удаляет его из папки, сохраняет новый созданный файл в папку. Программа завершает работу.
Если старый файл в данный момент не открыт в Excel, то Программа удаляет старый файл из папки, сохраняет созданный файл в папку. Программа завершает работу.
Если пользователь отвечает «Нет», то:
Если старый файл в данный момент открыт в Excel, то Программа не сохраняет новый созданный пользователем файл, а старый файл оставляет открытым вExcel.
Если старый файл в данный момент не открыт в Excel, то Программа не сохраняет новый созданный пользователем файл, старый файл остается в папке. Программа завершает работу.
Придуманное мной задание
В книгах с названиями Выставка кошек-Взрослые.xlsиВыставка кошек-Котята.xlsсодержатся данные о проведенной в текущем сезоне выставке. Книги находятся в папкеС:\Выставка кошек.
Каждая книга содержит один лист, на котором расположена база данных (БД) Excelследующей структуры:
Результаты выставки кошек - {Возраст кошек}
Поз |
Кличка |
Порода |
Пол |
Возраст |
Длина шерсти |
Владелец |
Очки |
1 |
Персик |
Персидская |
м |
8 мес |
Длинношерстная |
Евгений Смирнов |
25 |
2 |
Явор |
Бомбейская |
м |
11 мес |
Короткошерстная |
Елена Скачкова |
27 |
3 |
Лотос |
Бамбино |
м |
3 г |
Лысая |
Екатерина Григорова |
10 |
4 |
Клаус |
Сфинкс |
м |
4 г |
Лысая |
Алена Прокопенко |
8 |
5 |
Абель |
Британская |
ж |
9 л |
Короткошерстная |
Валерия Петрова |
14 |
6 |
Байра |
Бобтейл |
ж |
4 г |
Длинношерстная |
Валентина Арсентьева |
9 |
7 |
Жерар |
Сфинкс |
м |
4 г |
Лысая |
Виктория Квасова |
27 |
8 |
Заир |
Британская |
м |
10 мес |
Короткошерстная |
Екатерина Кудинова |
12 |
9 |
Багрянка |
Бомбейская |
ж |
2 г |
Короткошерстная |
Ксения Ефимова |
27 |
10 |
Дарли |
Сфинкс |
ж |
1 г |
Лысая |
Александра Синельникова |
16 |
11 |
Серена |
Абиссинская |
ж |
5 л |
Короткошерстная |
Анастасия Краснова |
23 |
12 |
Граф |
Рекс |
м |
7 л |
Лысая |
Анастасия Андреева |
17 |
13 |
Мадонна |
Мейн-кун |
ж |
9 мес |
Длинношерстная |
Дарья Фокина |
18 |
14 |
Джуно |
Британская |
м |
8 л |
Короткошерстная |
Анжелика Зимина |
18 |
15 |
Арон |
Оцикет |
м |
3 л |
Короткошерстная |
Екатерина Ошурова |
28 |
16 |
Пантера |
Рекс |
ж |
6 л |
Лысая |
Елизавета Стоцкая |
22 |
17 |
Барри |
Бобтейл |
м |
6 л |
Длинношерстная |
Валерий Игнатьев |
22 |
18 |
Салли |
Бомбейская |
ж |
3 г |
Короткошерстная |
Алиса Зачиняева |
13 |
19 |
Фелиса |
Мейн-кун |
ж |
8 мес |
Длинношерстная |
Ольга Николаева |
29 |
20 |
Царапка |
Рэгдолл |
ж |
3 г |
Длинношерстная |
Глеб Ворфоломеев |
28 |
21 |
Шакира |
Абиссинская |
ж |
2 г |
Короткошерстная |
Антон Казистов |
26 |
22 |
Брюс |
Корат |
м |
2 г |
Короткошерстная |
Дарья Крылова |
9 |
23 |
Марсель |
Сфинкс |
м |
1 г |
Лысая |
Елена Лаврова |
19 |
24 |
Никки |
Рекс |
м |
10 мес |
Лысая |
Аркадий Стоцкий |
15 |
25 |
Семур |
Бомбейская |
м |
4 г |
Короткошерстная |
Татьяна Михайлова |
15 |
26 |
Принц |
Британская |
м |
3 г |
Короткошерстная |
Мария Минина |
17 |
27 |
Нотти |
Сиамская |
м |
11 мес |
Короткошерстная |
Евгения Мартынова |
13 |
28 |
Игрун |
Абиссинская |
м |
7 л |
Короткошерстная |
Илья Соин |
23 |
29 |
Лапка |
Бобтейл |
ж |
2 г |
Длинношерстная |
Елена Царева |
21 |
30 |
Шерхан |
Мейн-кун |
м |
4 г |
Длинношерстная |
Елизавета Александрова |
20 |
Требуется (с помощью средств VBA) разработать программное обеспечение, позволяющее получить либо список призеров кошек взрослого возраста определенной длины шерсти:
Взрослые коты/кошки
Выставка кошек – {Длина шерсти}
Поз |
Кличка |
Порода |
Пол |
Владелец |
Очки |
Место |
1 |
Жерар |
Сфинкс |
м |
Виктория Квасова |
27 |
1 |
2 |
Пантера |
Рекс |
ж |
Елизавета Стоцкая |
22 |
2 |
3 |
Марсель |
Сфинкс |
м |
Елена Лаврова |
19 |
3 |
либо список призеров-котят определенной длины шерсти (примечание: котята допускаются к выставке с трехмесячного возраста, по достижении 8 месяцев кот считается взрослым):
Котята
Выставка кошек – {Длина шерсти}
Поз |
Кличка |
Порода |
Пол |
Владелец |
Очки |
Место |
1 |
|
|
|
|
|
|
2 |
|
|
|
|
|
|
3 |
|
|
|
|
|
|
Полученную таблицу сохранить в файле Взрослые-призеры.xlsилиКотята-призеры.xlsв папкеС:\Итоги выставки(в случае отсутствия папки – создать ее).
Запрос на создание искомого файла реализовать с помощью формы:
Рис.1. Форма запроса
С помощью альтернативных кнопок пользователь выбирает тип нужных ему результатов. По умолчанию включить кнопку Взрослый кот/кошка.
В поле со списком Выберите длину шерстипользователь выбирает категорию шерсти, кошек которой нужно выводить в итоговой таблице. Элементы списка – это строки, извлеченные из таблиц книгВыставка кошек-Взрослые.xlsиВыставка кошек-Котята.xlsв папкеC:\Выставка кошек.
Кнопку ОКсвязать с клавишей[Enter], кнопкуОтмена– с клавишей[Escape].
Предусмотреть обработку событий, связанных с различными состояниями исходного и конечного файлов: закрыты, открыты, не существуют. При наличии конечного файла выдать запрос на его замену.
Программа должна находиться в файле Программа Выставка кошек.xls
При открытии файла с программой в стандартном интерфейсе Excelдолжна появляться панель инструментов с кнопкамиО программеиВыставка кошек. При щелчке по кнопкеО программена экране должна появляться форма с данными о разработчике программы. Вторая кнопка предназначена для вызова формы (рис.1).
При закрытии файла с программой привнесенный пользовательский интерфейс должен удаляться.
Оформить программу согласно требованиям, изложенным на лекциях.
Придумать свой вариант задания.