Разработка базы данных "Туризм и отдых"

Тип работы:
Курсовая
Предмет:
Программирование


Узнать стоимость

Детальная информация о работе

Выдержка из работы

Министерство образования Нижегородской области

Государственное бюджетное образовательное учреждение

Среднего профессионального образования

«Нижегородский экономико-правовой колледж им. Б.П. Трифонова»

Цикловая комиссия спецдисциплин программирования

КУРСОВАЯ РАБОТА

РАЗРАБОТКА БАЗЫ ДАННЫХ

«ТУРИЗМ И ОТДЫХ»

по дисциплине

«Технология разработки программных продуктов»

Студент: М.О. Чиркова12. 12. 2011

Специальность, группа: 230 105, 41П

Нижний Новгород 2011

Содержание

  • Введение
  • Глава 1. Общая часть
  • 1.1 Тенденция развития информационных систем и информационных технологий
  • 1.2 Содержательная постановка задачи
  • Глава 2. Основы проектирования структуры информационной системы
  • 2.1 Проектирование базы данных
  • 2.2 Концептуальная модель базы данных
  • Глава 3. Разработка и содержание системы
  • 3.1 Основные задачи, реализованные в системе
  • 3.2 Информационная модель автоматизированного решения задачи
  • 3.3 Технология решения задачи
  • Литература
  • Приложение

Введение

Кажется, еще совсем недавно, но уверенным шагом вошли в нашу жизнь персональные компьютеры. Еще совсем недавно их считали как элитную вещь, доступную не каждому. Но минует время, техника стремительно совершенствуется, и уже каждая десятая семья имеет персональный компьютер. Для взрослых членов семьи он стал незаменимым помощником, нужным для работы, а для детей — преимущественно источником развлечений.

Быстрое усовершенствование технических данных компьютеров постоянно расширяет его возможности. Если раньше круг использования персонального компьютера был немного ограниченным, то сегодня тяжело найти область или род профессиональной деятельности человека, в котором бы не использовали компьютерных технологий.

Современные ПК — это возможность создания огромных по объему банков данных (в частности, в Интернете), быстрый поиск и распечатывание информации, набор и тиражирование текстов, бланков и т. п., осуществление расчетов в банковском и бухгалтерском делах, психическая и медицинская индивидуальная диагностика, обработка и вывод на экран дисплея или печать ее результатов, моделирование одежды, дизайна мебели, планирование квартир и офисов, создание рисованных кадров в мультипликации, рекламных роликов, фотороботов в криминалистике, программное управление машинами, кораблями, космическими спутниками. И этот список далеко не весь…

Большинство современных предприятий широко используют компьютерные технологии. Это связано в основном с необходимостью различных организаций получать, обрабатывать и хранить большие объёмы информации. Для централизованного и упорядоченного хранения данных используются базы данных.

база информационная система менеджер

База данных — представленная в таким образом, чтобы эти материалы могли быть

Для чего нужны базы данных?

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

При автоматизации бизнес-процессов часто возникают задачи, которые не решают уже готовые программы и базы данных. При этом аналитическая информация показывает, что даже если использовать сложные и дорогостоящие CRM-системы (Customer Relationship Management — система управления взаимоотношениями с клиентами) управления предприятием, получить решение, удовлетворяющее руководство компании, бывает просто невозможно.

Базы данных создаются специально для хранения, обработки, проведения расчетов, сортировки, выборки и представления любых массивов данных по любым критериям.

Мое задание курсового проекта состояло в том, чтобы разработать базу данных «Туризм и Отдых», которая должна частично автоматизировать работу менеджера по туризму в туристическом агентстве.

Курсовой проект содержит следующие разделы:

· Введение, где отражен современный уровень развития вычислительной техники, программного обеспечения, средств автоматизации. Во введении определяются цели и задачи курсового проекта, а также краткое содержание курсового проекта в целом.

· Общая часть, где описывается тенденция развития информационных систем и информационных технологий, а также дается Содержательная постановка задачи курсового проекта.

· Основы проектирования структуры информационной системы. Этот раздел состоит из 2 подразделов: проектирование базы данных (описание всего технологического процесса разработки курсового проекта, начиная с этапа постановки задачи и заканчивая этапом получения результатов), концептуальная модель базы данных.

· Разработка и содержание системы. В этом разделе подробно описываются основные задачи, выполняемые автоматически с помощью программы, определяется информационно-логическая модель данных, наглядно показывающая отношения подчиненности информационных объектов и связи между выявленными информационными объектами, а также отображается граф-схема разработанной программы.

· Приложение. В этом разделе приводится исходный код программы.

Глава 1. Общая часть

1.1 Тенденция развития информационных систем и информационных технологий

Информационная система — это взаимосвязанная совокупность средств, методов и персонала, используемых для хранения, обработки и выдачи информации в интересах достижения поставленной цели.

Этапы развития информационных систем и цели их использования представлены в таблице:

Период времени

Концепция использования информации

Вид информационной системы — ИС

Цель использования ИС

1950 — 1960 гг.

Бумажный поток расчетных документов

ИТ обработки расчетных документов на электромеханических бухгалтерских машинах

Повышение скорости обработки документов. Упрощение процедуры обработки счетов и расчета зарплаты

1960 — 1970 гг.

Основная помощь в подготовке отчетов

Управленческие ИТ для производственной информации

Ускорение процесса подготовки отчетности

1970 1980 гг.

Управленческий контроль реализации (продаж)

Системы поддержки принятия решений. Системы для высшего звена управления.

Выработка наиболее рационального решения

1980 — 2000 гг.

Информация — стратегический ресурс, обеспечивающий конкурентное преимущество

Стратегические ИТ. Автоматизированные подразделения

Повышение конкурентоспособности предприятия

Первые информационные системы появились в 50х годах. Они были предназначены для обработки счетов и расчета зарплаты, а реализовывались на электромеханических бухгалтерских счетных машинах. Это приводило к некоторому сокращению затрат и времени на подготовку бумажных документов.

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

В 70-х — начале 80-х годов информационные системы начинают широко использоваться в качестве средства управленческого контроля, поддерживающего и ускоряющего процесс принятия решений.

К концу 80-х годов концепция использования информационных систем вновь изменяется. Они становятся стратегическим источником информации и используются на всех уровнях организации любого профиля. Информационные системы этого периода, предоставляя вовремя нужную информацию, помогают организации достичь успеха в своей деятельности, создавать новые товары и услуги, находить новые рынки сбыта, обеспечивать себе достойных партнеров, организовывать выпуск продукции по низкой цене и много другое

Информационные технологии (ИТ, Information Technology, IT) — это класс областей деятельности, относящихся к технологиям управления и обработкой огромного потока информации с применением вычислительной техники.

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

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

Выделяют несколько признаков, по которым можно классифицировать информационные системы.

Основные признаки деления информационных технологий:

1. Классификация И С по признаку структурированности задач.

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

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

2. Классификация И С по степени автоматизации.

ь ручные ИС — характеризуются полным отсутствием современных технических средств обработки информации и выполнением всех операций человеком;

ь автоматические ИС — выполняют все операции по переработке информации без участия человека;

ь автоматизированные ИС — предполагают участие в процессе обработки информации и человека, и технических средств, причем главная роль отводится компьютеру. В современном толковании в термин «информационная система» вкладывается понятие автоматизированной системы.

3. Классификация И С по характеру использования информации.

ь Информационно-поисковые системы производят ввод, систематизацию, хранение, выдачу информации по запросу пользователя без сложных преобразований данных, например ИПС в библиотеке, в железнодорожных и авиа-кассах продажи билетов.

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

4. Классификация И С по сфере их применения.

ь ИС организационного управления предназначены для автоматизации функций управленческого персонала. Учитывая высокую распространенность и разнообразие этого класса систем, часто термин «информационные системы» получает именно такое толкование. К этому классу относятся ИС управления как промышленными организациями, так непромышленными объектами: гостиницами, банками, торговыми фирмами и др.

ь ИС управления технологическими процессами служат для автоматизации функций производственного персонала. Они широко используются при организации производства для поддержания технологического процесса в металлургической и машиностроительной промышленности.

ь ИС автоматизированного проектирования предназначены для автоматизации функций инженеров-проектировщиков, конструкторов, архитекторов, дизайнеров при создании новой техники или технологии. Основными функциями САПР являются: инженерные расчеты, создание графической (чертежей, схем, планов) и проектной документации, моделирование проектируемых объектов.

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

1.2 Содержательная постановка задачи

Задача данного курсового проекта — разработать базу данных «Туризм и Отдых», которая должна обеспечивать ведение организации отдыха и туризма. Ежегодно большое количество людей обращаются в такие фирмы для обеспечения собственного отдыха, в основном на время отпусков.

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

База данных «Туризм и Отдых» должна автоматизировать основную работу менеджера по туризму, которая заключается в сборе, обработке и хранении информации о клиентах туристических фирм-партнеров, расчете цен на предоставляемые услуги и обеспечении надежного отдыха. База должна содержать реестр зарегистрированных клиентов в удобочитаемой форме, возможность добавлять новых клиентов, редактировать данные о них, осуществлять поиск клиентов, а также формировать отчетность и печать зарегистрированных клиентов. Все эти возможности должны быть реализованы и в реестре зарегистрированных фирм.

Глава 2. Основы проектирования структуры информационной системы

2.1 Проектирование базы данных

Для разработки базы данных «Туризм и Отдых» нужно определить всю необходимую входную и выходную информацию, составить граф-схему, концептуальную модель базы данных, затем написать исходный код программы на встроенном в MS Excel языке программирования VBA (Visual Basic for Application).

MS Visual Basic — средство разработки программного обеспечения, разработанное корпорацией Microsoft, включающее язык программирования и среду разработки приложений.

VBA — немного упрощенная реализация языка программирования Visual Basic, встроенная в линейку продуктов Microsoft Office (включая версии для MAC OS), а также во многие другие программные пакеты, такие как Ошибка! Источник ссылки не найден. , Ошибка! Источник ссылки не найден. , Ошибка! Источник ссылки не найден. , Ошибка! Источник ссылки не найден. и Ошибка! Источник ссылки не найден. . VBA — это легкий способ разработки собственных программ для Windows, передовая и высокоэффективная система разработки приложений Windows, требующая минимум средств и усилий. Созданные на VBA приложения и компоненты можно компилировать с помощью оптимизирующего компилятора, ядро которого идентично применяемому в языке программирования Microsoft C. VBA предоставляет команды для создания и управления необходимыми элементами программы в Windows: диалогами, окнами, линейками меню, раскрывающимися списками, командными списками, панелями инструментов и многие другие. С помощью Visual Basic for Application (VBA) можно легко и быстро создавать пользовательские приложения, используя единую для всех офисных программ среду и язык. Научившись разрабатывать приложения для одной офисной программы, например Excel, можно создавать приложения и для других офисных программ, например Access. VBA обладает мощными встроенными интеллектуальными средствами, которые позволяют даже начинающему пользователя быстро самостоятельно разрабатывать профессиональные приложения. Например, при написании кода программы редактор VBA сам предлагает пользователю возможные продолжения составляемых им инструкций. Другим примером встроенных интеллектуальных средств VBA является макрорекордер, который переводит все выполняемые вручную пользователем действия в основном приложении на язык VBA. Таким образом, макрорекордер позволяет пользователю поручать VBA, самому создавать большие куски кода разрабатываемого приложения. Макропрограммы VBA сохраняются в файловом формате, используемом приложением, в котором написан макрос VBA, а не в отдельных текстовых файлах. Для выполнения макропрограмм VBA ее надо сначала запустить, используя только то приложение, в котором написан этот макрос. Несмотря на то, что основные возможности VBA остаются теми же во всех приложениях Office, каждое приложение добавляет специальные команды и объекты (в зависимости от конкретного приложения) в Visual Basic for Applications. Например, VBA в Word содержит команды, относящиеся только к операциям над текстом в документе, тогда как VBA в Access содержит команды, относящиеся только к операциям с БД, и т. д. В частности, VBA включает необходимые команды для использования Object Linking and Embedding (OLE) и Dynamic Data Exchange (DDE) для связи или совместного использования данных с другими приложениями Windows. Таким образом, с помощью VBA можно создавать приложения практически для любой области современных компьютерных технологий: бизнес-приложений, игры, мультимедиа, базы данных.

База данных «Туризм и Отдых» содержит в себе информацию о фирмах, предоставляющих путевки и о клиентах, заключивших договор с определенной фирмой. Она осуществляет хранение, добавление, редактирование, удаление и поиск этой информации. Для достижения этих целей создаются две рабочие книги (первая — Firms, содержит информацию о туристических фирмах, вторая — Main, содержит информацию о клиентах). Первая книга (Firms) состоит из нескольких листов: первый лист — стартовая работа с базой, остальные листы содержат детальную информацию о каждой из фирм и услуги, которая фирма может предложить клиенту.

Вторая книга (Main) состоит из:

1. Стартовая страница работы с базой данных;

2. Страница («СписокФирм»), содержащая список зарегистрированных туристических фирм;

3. Страницы («ПоискПутевки»), с помощью которой можно осуществить поиск необходимой путевки по определенным критериям;

4. Страницы «Заказы», где непосредственно можно осуществить заказ путевки;

5. Страницы «Выходная форма», где по запросу пользователя выводится информация о конкретном заказе.

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

Выходная информация базы данных представлена в виде отчёта (таблиц), который можно просмотреть и вывести на печать.

2.2 Концептуальная модель базы данных

Цель концептуального программирования — создание концептуальной модели данных на основе представлений о предметной области каждого отдельного типа пользователей. Концептуальная модель представляет собой описание основных сущностей (таблиц) и связей между ними без учёта принятой модели базы данных и синтаксиса целевой СУБД. Часто на такой модели отображаются только имена сущностей (таблиц) без указания их атрибутов. Представление пользователя включает в себя данные, необходимые конкретному пользователю для принятия решений или выполнения некоторого задания.

База данных «Туризм и Отдых» состоит из двух рабочих книг (первая содержит информацию о туристических фирмах, вторая содержит информацию о клиентах), связанных между собой, каждая из которых содержит свои формы для просмотра, добавления, редактирования, поиска и вид выходного отчёта.

Первая книга (Firms) состоит из нескольких листов: первый лист — стартовая работа с базой, остальные содержат детальную информацию о каждой из фирм и услуги, которая конкретная фирма может предложить клиенту.

На остальных страницах содержатся такие данные, как: наименование фирмы, адрес местонахождения, контактные телефоны, адрес сайта фирмы и информацию о путевках (Страна, Город, Количество свободных мест взрослых и детских, Цена взрослого и детского билетов, Цена страховки, Длительность путевки, Название отеля, в котором будет проживать клиент, Количество звезд отеля, Дополнительные услуги).

Вторая книга (Main) состоит из: рабочего листа «1» — стартовая работа с базой данных, листа «СписокФирм», содержащего список зарегистрированных туристических фирм (синхронизация с книгой Firms) и краткую информацию о них (Наименование фирмы, Адрес, Контактные телефоны, Адрес сайта фирмы), листа «ПоискПутевки», с помощью которого можно осуществить поиск необходимой путевки по определенным критериям (Фирма, Страна, Город, Цена путевки), листа «Заказы», где непосредственно можно осуществить заказ путевки и листа «Выходная форма», где по запросу пользователя выводится информация о конкретном заказе.

Рис. 1. Схема данных со связями

Глава 3. Разработка и содержание системы

3.1 Основные задачи, реализованные в системе

Разработанная база данных «Туризм и Отдых» содержит всю необходимую менеджеру по туризму информацию о клиентах и о туристических фирмах-партнерах, предоставляющих свои услуги по организации отдыха клиентов.

Работнику предоставлена возможность удобной организации учета клиентов и туристических фирм-партнеров с минимальными временными затратами.

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

Готовая программа протестирована и отвечает всем требованиям, предъявленным заказчиком.

3.2 Информационная модель автоматизированного решения задачи

На начальном этапе разработки базы данных «Туризм и Отдых» была создана форма Main (Рис. 2), которая представляет собой главное меню программы.

При нажатии кнопки «Перейти в книгу Firms» на экране появится рабочая книга Firms, в которой можно указать подробную информацию о фирмах и услугах, которые фирмы смогут предоставить клиенту.

При нажатии на кнопку «Перейти к списку фирм» на экране появится рабочий лист рабочей книги Main «СписокФирм», в котором будет отображаться список всех фирм, зарегистрированных в книге Firms.

При нажатии кнопки «Перейти к списку заказов» на экране отобразится рабочий лист «Заказы» рабочей книги Main, где будет находиться информация о клиентах, заказавших путевки.

При нажатии на кнопки «Сделать новый заказ», «Редактировать данные заказа», «Удалить заказ из базы» на экране отобразится рабочий лист «Заказы» книги Main после чего предоставляется возможность соответственно внести новый заказ в базу — на экране отобразится форма frmNewZakaz (Рис. 3), на форме имеются кнопки «Сохранить в базе» и «Сохранить в базе и создать выходную форму» (при нажатии на нее информация о заказе будет сохранена в базе и выведена на лист «ВыхФорма»); редактировать уже существующий заказ — отобразится окно с сообщением какой заказ необходимо изменить (Рис. 4), после ввода номера заказа отобразится форма frmNewZakaz с текущей информацией о заказе, нажав на кнопку «Сохранить в базе» или «Сохранить в базе и создать выходную форму» в базу будут внесены изменения; удалить заказ из базы — отобразится окно с сообщением, какой заказ необходимо удалить из базы, после чего заказ с определенным номером будет удален из базы.

При нажатии на кнопку «Поиск путевки по критериям» программа перейдет к рабочему листу «ПоискПутевки» и на экране отобразится форма Find (Рис. 5), после выбора критериев поиска и их подтверждения на листе «ПоискПутевки» отобразятся результаты поиска.

При нажатии кнопки «Сохранить все данные и выйти» произойдет сохранение всех данных в рабочих книгах Firms и Main, после чего приложение MS Excel закроется.

Также была создана форма SubMain, которая представляет собой меню работы с рабочей книгой Firms (Рис. 6).

При нажатии на кнопку «Перейти на определенную фирму» появится форма listFirm (Рис. 7), в которой можно выбрать определенную фирму, после нажатия кнопки ОК программа перейдет на лист выбранной из списка фирмы.

При нажатии на кнопку «Добавить новую фирму в базу» на экране отобразится форма NewFirmLo (Рис. 8), после ввода необходимых данных будет создан новый рабочий лист с именем, указанным в поле Наименование формы NewFirmLo.

При нажатии на кнопку «Редактировать данные фирмы» отобразится форма frmEditFirm (Рис. 9), позволяющей изменить информацию об определенной фирме, после подтверждения ввода новых данных данные о фирме будут изменены.

При нажатии на кнопку «Удалить фирму из базы» будет отображена форма listFirm, после чего появится окно с сообщением о подтверждении удаления фирмы из базы (Рис. 10), если удаление подтверждено пользователем, фирма и все ее данные будут удалены из базы.

При нажатии на кнопку «Добавить новую путевку» на экране появится форма listFirm. Далее будет отображена форма frmNewPut (Рис. 11), в которой есть две возможности (добавить путевку /новая страна и город/ и добавить путевку /новый город в уже существующей стране/), после ввода необходимых данных и подтверждения ввода появится форма frmPInfo (Рис. 12), в которой указываются подробные данные о путевке, после чего на листе определенной фирмы будут внесены соответствующие изменения.

При нажатии на кнопку «Редактировать данные путевки» появится форма listFirm, далее форма frmSelPut (Рис. 13), в которой предлагается выбрать страну и город путевки, которые необходимо изменить, введя и подтвердив данные в форме frmSelPut, на экране отобразится форма frmPInfo. После ввода новых данных о путевке и подтверждения изменения данных, информация о путевке определенной фирмы будет изменена.

При нажатии на кнопку «Удалить путевку из базы» появится форма listFirm, после нее форма frmDelCoun (Рис. 14), в которой предлагается выбрать страну и все ее города, либо определенный город страны путевок, которые необходимо удалить, подтвердив удаление, информация об определенной путевке будет удалена из базы.

Рис. 2

Рис. 3

Рис. 4

Рис. 5

Рис. 6

Рис. 7

Рис. 8

Рис. 9

Рис. 10

Рис. 11

Рис. 12

Рис. 13

Рис. 14

3.3 Технология решения задачи

Рис. 15 Граф-схема базы данных «Туризм и Отдых».

Рис. 15.1 Граф-схема базы данных «Туризм и Отдых». Продолжение.

Литература

1. А. Ю. Гарнаев «Самоучитель VBA», Технология создания пользовательских приложений, С. — П. BHV, 1999.

2. В. Г. Кузьменко «VBA 2000» (самоучитель) М., ЗАО «Издательство Бином», 2000.

Приложение

Код программы:

//Workbook («Main. xls»). Worksheets («1»)

Private Sub Worksheet_SelectionChange (ByVal Target As Range)

Main. Show

End Sub

//Workbook («Main. xls»). Worksheets («СписокФирм»)

Private Sub Worksheet_Activate ()

'Экспорт

maxi = 5

i = 4

Do

If i = 4 And Cells (i, 1). Value = «» Then Exit Do

i = i + 1

Loop While Cells (i, 1). Value < > ««

Range (Cells (4, 1), Cells (i, 5)). Delete

Range («A3»). Name = «Наим»

a = Range («Наим»). Row + 1

n = 0

For Each Sheet In Workbooks («Firms»). Worksheets

If Sheet. Name < > «1» Then

For j = 1 To 5

If j = 5 Then

Workbooks («Main»). Worksheets («СписокФирм»). Cells (a, j). Hyperlinks. Add _

Anchor: =Workbooks («Main»). Worksheets («СписокФирм»). Cells (a, j), _

Address: ="http://" & Sheet. Cells (1, j)

Exit For

End If

Workbooks («Main»). Worksheets («СписокФирм»). Cells (a, j) = _

Sheet. Cells (1, j)

Stri = CStr (Sheet. Name)

If j = 1 Then

ActiveSheet. Hyperlinks. Add Anchor: =Workbooks («Main»). Worksheets («СписокФирм»). Cells (a, j), _

Address: ="C:UsersMarinkoffDesktopFirms. xls", SubAddress:= _

«'» & Stri & «'!A1», TextToDisplay: =CStr (Sheet. Cells (1, j). Value)

End If

Next j

Оформить a, maxi

a = a + 1

n = n + 1

End If

Next Sheet

Label1. Caption = Chr (13) & «В базе данных «& n & «турфирм» & Chr (13)

Columns («A: E»). Select

Selection. RowHeight = 30

Selection. ColumnWidth = 24

If ActiveSheet. AutoFilterMode = False Then

Range («A3: E3»). Select

Selection. AutoFilter

End If

Range («A1»). Select

End Sub

//Workbook («Main. xls»). Worksheets («ПоискПутевки»)

Private Sub CommandButton1_Click ()

i = 4

Do

If i = 4 And Cells (i, 1). Value = «» Then Exit Do

i = i + 1

Loop While Cells (i, 1). Value < > ««

Range (Cells (4, 1), Cells (i, 12)). Delete

End Sub

Private Sub CommandButton2_Click ()

i = 4

Do

If i = 4 And Cells (i, 1). Value = «» Then Exit Do

i = i + 1

Loop While Cells (i, 1). Value < > ««

Range (Cells (4, 1), Cells (i, 12)). Delete

Find. Show

End Sub

Private Sub CommandButton3_Click ()

Workbooks («Main. xls»). Worksheets («1»). Activate

Main. Show

End Sub

//Workbook («Main. xls»). Worksheets («Заказы»)

Private Sub CommandButton1_Click ()

Main. Show

End Sub

Private Sub Worksheet_Activate ()

Columns («A: P»). Select

Selection. ColumnWidth = 8. 71

If ActiveSheet. AutoFilterMode = False Then

Range («A3: P3»). Select

Selection. AutoFilter

End If

Range («A1»). Select

i = 3

Do

i = i + 1

Loop While Cells (i, 1). Value < > ««

Kol_Prstr = 4

Label1. Caption = Chr (13) & «В базе «& i — Kol_Prstr & «заказа (-ов)»

End Sub

Private Sub Worksheet_Change (ByVal Target As Range)

i = 3

Do

i = i + 1

Loop While Cells (i, 1). Value < > ««

Kol_Prstr = 4

Label1. Caption = Chr (13) & «В базе «& i — Kol_Prstr & «заказа (-ов)»

End Sub

//Workbook («Main. xls»). Worksheets («ВыхФорма»)

Private Sub CommandButton1_Click ()

ActiveSheet. PrintOut Preview: =True

End Sub

Private Sub CommandButton2_Click ()

Workbooks («Main. xls»). Worksheets («1»). Activate

Main. Show

End Sub

//Workbook («Main. xls»)

Private Sub Workbook_Open ()

' Application. Workbooks. Open «I: БДТурфирмFirms. xls»

MenuBars (xlWorksheet). Menus. Add Caption: ="&Работа с заказами и путевками", Before: =11

MenuBars (xlWorksheet). Menus («&Работа с заказами и путевками»). MenuItems. Add _

Caption: ="&Перейти в главное меню", Before: =2, OnAction: ="MainS"

MenuBars (xlWorksheet). Menus («&Работа с заказами и путевками»). MenuItems. Add _

Caption: ="&Новый заказ", Before: =3, OnAction: ="NewZa"

MenuBars (xlWorksheet). Menus («&Работа с заказами и путевками»). MenuItems. Add _

Caption: ="&Редактирование заказа", Before: =4, OnAction: ="EditZa"

MenuBars (xlWorksheet). Menus («&Работа с заказами и путевками»). MenuItems. Add _

Caption: ="&Удаление заказа", Before: =5, OnAction: ="DelZa"

MenuBars (xlWorksheet). Menus («&Работа с заказами и путевками»). MenuItems. Add _

Caption: ="&Поиск путевки по определенным критериям", Before: =6, OnAction: ="ShowPut"

Worksheets («1»). Activate

Main. Show

End Sub

//Workbook («Main. xls») Форма Find

Option Compare Text

Private Sub CheckBox1_Change ()

If CheckBox1. Value = True Then

ComboBox1. Enabled = True

For Each Sheet In Workbooks («Firms. xls»). Worksheets

If Sheet. Name < > «1» Then

ComboBox1. AddItem Sheet. Name

End If

Next Sheet

Else

ComboBox1. Enabled = False

ComboBox1. Clear

ComboBox2. Clear

ComboBox3. Clear

CheckBox2. Value = False

ComboBox2. Enabled = False

CheckBox3. Value = False

ComboBox3. Enabled = False

ComboBox2. Clear

Exit Sub

End If

End Sub

Private Sub CheckBox2_Change ()

If CheckBox2. Value = True Then

ComboBox2. Enabled = True

CheckBox3. Value = True

ComboBox3. Enabled = True

End If

If CheckBox2. Value = True And CheckBox1. Value = False Then

ComboBox2. Enabled = True

CheckBox3. Value = True

ComboBox3. Enabled = True

For Each Sheet In Workbooks («Firms. xls»). Worksheets

If Sheet. Name < > «1» Then

num = Workbooks («Firms»). Worksheets (Sheet. Name). Index

ie = Workbooks («Firms»). Worksheets (Sheet. Name). Range («End» & num). Row

With Workbooks («Firms»). Worksheets (Sheet. Name)

For ib =. Range («Beg» & num). Row + 1 To ie

If. Cells (ib, 1). MergeCells = True Then

If ComboBox2. ListCount = 0 Then

ComboBox2. AddItem. Cells (ib, 1). Value

Else

flaf = 0

For k = 0 To ComboBox2. ListCount — 1

If ComboBox2. List (k) =. Cells (ib, 1). Value Then

flaf = 1

Exit For

Else

flaf = 0

End If

Next k

If flaf = 0 Then

ComboBox2. AddItem. Cells (ib, 1). Value

End If

End If

End If

Next ib

End With

End If

Next Sheet

End If

If CheckBox2. Value = False Then

ComboBox2. Enabled = False

CheckBox3. Value = False

ComboBox3. Enabled = False

ComboBox2. Clear

Exit Sub

End If

End Sub

Private Sub CheckBox4_Change ()

If CheckBox4. Value = True Then

TextBox2. Enabled = True

TextBox3. Enabled = True

TextBox4. Enabled = True

TextBox5. Enabled = True

Else

TextBox2. Text = ««

TextBox3. Text = ««

TextBox4. Text = ««

TextBox5. Text = ««

TextBox2. Enabled = False

TextBox3. Enabled = False

TextBox4. Enabled = False

TextBox5. Enabled = False

End If

End Sub

Private Sub ComboBox1_Change ()

ComboBox2. Clear

ComboBox3. Clear

If ComboBox1. Value < > «» Then

num = Workbooks («Firms»). Worksheets (ComboBox1. Value). Index

ie = Workbooks («Firms»). Worksheets (ComboBox1. Value). Range («End» & num). Row

With Workbooks («Firms»). Worksheets (ComboBox1. Value)

For ib =. Range («Beg» & num). Row + 1 To ie

If. Cells (ib, 1). MergeCells = True Then

ComboBox2. AddItem. Cells (ib, 1). Value

End If

Next ib

End With

End If

End Sub

Private Sub ComboBox2_Change ()

ComboBox3. Clear

If ComboBox1. Value < > «» Then

k = 0

num = Workbooks («Firms. xls»). Worksheets (ComboBox1. Value). Index

ie = Workbooks («Firms. xls»). Worksheets (ComboBox1. Value). Range («End» & num). Row

With Workbooks («Firms. xls»). Worksheets (ComboBox1. Value)

For ib =. Range («Beg» & num). Row + 1 To ie

If ComboBox2. Value = CStr (. Cells (ib, 1). Value) And. Cells (ib, 1). MergeCells = True Then

k =. Cells (ib, 1). Row

Exit For

End If

Next ib

k = k + 1

temp = k

Do While. Cells (k, 1). MergeCells = False And k < >. Range («End» & num). Row

ComboBox3. AddItem. Cells (k, 1). Value

k = k + 1

Loop

End With

Else

For Each Sheet In Workbooks («Firms. xls»). Worksheets

flagnet = 0

If Sheet. Name < > «1» Then

k = 0

num = Workbooks («Firms. xls»). Worksheets (Sheet. Name). Index

ie = Workbooks («Firms. xls»). Worksheets (Sheet. Name). Range («End» & num). Row

If ie < > 6 Then

With Workbooks («Firms. xls»). Worksheets (Sheet. Name)

For ib =. Range («Beg» & num). Row + 1 To ie

If ComboBox2. Value = CStr (. Cells (ib, 1). Value) And. Cells (ib, 1). MergeCells = True Then

flagnet = 1

k =. Cells (ib, 1). Row

Exit For

End If

Next ib

If flagnet = 1 Then

k = k + 1

temp = k

Do While. Cells (k, 1). MergeCells = False And k < >. Range («End» & num). Row

If ComboBox3. ListCount = 0 Then

ComboBox3. AddItem. Cells (k, 1). Value

k = k + 1

Else

flaf = 0

For p = 0 To ComboBox3. ListCount — 1

If ComboBox3. List (p) =. Cells (k, 1). Value Then

flaf = 1

Exit For

Else

flaf = 0

End If

Next p

If flaf = 0 Then

ComboBox3. AddItem. Cells (k, 1). Value

k = k + 1

Else

k = k + 1

End If

End If

Loop

End If

End With

End If

End If

Next Sheet

End If

End Sub

Private Sub CommandButton1_Click ()

flag = 0

flag2 = 0

maxi = 12

k = 0

i = 4

'если ничего не выбрано

If ComboBox1. Value = «» And ComboBox2. Value = «» _

And ComboBox3. Value = «» And TextBox2. Text = «» _

And TextBox3. Text = «» And TextBox4. Text = «» _

And TextBox5. Text = «» Then

MsgBox «Выберите необходимые критерии для поиска. «, vbCritical, «Ошибка!»

Exit Sub

End If

'если выбрана только фирма

If ComboBox1. Value < > «» And ComboBox2. Value = «» _

And ComboBox3. Value = «» And TextBox2. Text = «» _

And TextBox3. Text = «» And TextBox4. Text = «» _

And TextBox5. Text = «» Then

Workbooks («Firms. xls»). Worksheets (CStr (ComboBox1. Value)). Activate

Me. Hide

End If

'если выбрана только страна

If ComboBox1. Value = «» And ComboBox2. Value < > «» _

And ComboBox3. Value = «» And TextBox2. Text = «» _

And TextBox3. Text = «» And TextBox4. Text = «» _

And TextBox5. Text = «» Then

For Each Sheet In Workbooks («Firms. xls»). Worksheets

k = 0

If Sheet. Name < > «1» Then

num = Workbooks («Firms. xls»). Worksheets (Sheet. Name). Index

ie = Workbooks («Firms. xls»). Worksheets (Sheet. Name). Range («End» & num). Row

If ie < > 6 Then

With Workbooks («Firms. xls»). Worksheets (Sheet. Name)

For ib =. Range («Beg» & num). Row + 1 To ie

If ComboBox2. Value = CStr (. Cells (ib, 1). Value) And. Cells (ib, 1). MergeCells = True Then

k =. Cells (ib, 1). Row

Workbooks («Main. xls»). Worksheets («ПоискПутевки»). Cells (i, 1). Value = Sheet. Name

Stri = CStr (Sheet. Name)

Workbooks («Main. xls»). Worksheets («ПоискПутевки»). Hyperlinks. Add _

Anchor: =Workbooks («Main. xls»). Worksheets («ПоискПутевки»). Cells (i, 1), _

Address: ="C:UsersMarinkoffDesktopFirms. xls", SubAddress:= _

«'» & Stri & «'!A1», TextToDisplay: =CStr (Sheet. Name)

Workbooks («Main. xls»). Worksheets («ПоискПутевки»). Cells (i, 2). Value = CStr (ComboBox2. Value)

Оформить i, maxi

i = i + 1

End If

Next ib

End With

End If

End If

Next Sheet

Me. Hide

End If

'если выбрана фирма и страна

If ComboBox1. Value < > «» And ComboBox2. Value < > «» _

And ComboBox3. Value = «» And TextBox2. Text = «» _

And TextBox3. Text = «» And TextBox4. Text = «» _

And TextBox5. Text = «» Then

num = Workbooks («Firms. xls»). Worksheets (ComboBox1. Value). Index

ie = Workbooks («Firms. xls»). Worksheets (ComboBox1. Value). Range («End» & num). Row

If ie < > 6 Then

With Workbooks («Firms. xls»). Worksheets (ComboBox1. Value)

For ib =. Range («Beg» & num). Row + 1 To ie

If ComboBox2. Value = CStr (. Cells (ib, 1). Value) And. Cells (ib, 1). MergeCells = True Then

k =. Cells (ib, 1). Row

Exit For

End If

Next ib

k = k + 1

For ib = k To ie

If. Cells (ib, 1). MergeCells = False And ib < > ie Then

Workbooks («Main. xls»). Worksheets («ПоискПутевки»). Cells (i, 1). Value = ComboBox1. Value

Workbooks («Main. xls»). Worksheets («ПоискПутевки»). Cells (i, 2). Value = ComboBox2. Value

Workbooks («Main. xls»). Worksheets («ПоискПутевки»). Cells (i, 3). Value =. Cells (ib, 1). Value

Workbooks («Main. xls»). Worksheets («ПоискПутевки»). Cells (i, 4). Value =. Cells (ib, 2). Value

Workbooks («Main. xls»). Worksheets («ПоискПутевки»). Cells (i, 5). Value =. Cells (ib, 3). Value

Workbooks («Main. xls»). Worksheets («ПоискПутевки»). Cells (i, 6). Value =. Cells (ib, 4). Value

Workbooks («Main. xls»). Worksheets («ПоискПутевки»). Cells (i, 7). Value =. Cells (ib, 5). Value

Workbooks («Main. xls»). Worksheets («ПоискПутевки»). Cells (i, 8). Value =. Cells (ib, 6). Value

Workbooks («Main. xls»). Worksheets («ПоискПутевки»). Cells (i, 9). Value =. Cells (ib, 7). Value

Workbooks («Main. xls»). Worksheets («ПоискПутевки»). Cells (i, 10). Value =. Cells (ib, 8). Value

Workbooks («Main. xls»). Worksheets («ПоискПутевки»). Cells (i, 11). Value =. Cells (ib, 9). Value

Workbooks («Main. xls»). Worksheets («ПоискПутевки»). Cells (i, 12). Value =. Cells (ib, 10). Value

Оформить i, maxi

i = i + 1

Else

Exit For

End If

Next ib

End With

End If

Me. Hide

End If

'если выбрана фирма и цена

If ComboBox1. Value < > «» And ComboBox2. Value = «» _

And ComboBox3. Value = «» And TextBox2. Text < > «» _

And TextBox3. Text < > «» Or TextBox4. Text < > «» _

And TextBox5. Text < > «» Then

num = Workbooks («Firms. xls»). Worksheets (ComboBox1. Value). Index

ie = Workbooks («Firms. xls»). Worksheets (ComboBox1. Value). Range («End» & num). Row

If ie < > 6 Then

If TextBox2. Text < > «» And TextBox3. Text < > «» Then

If IsNumeric (TextBox3. Text) = True And IsNumeric (TextBox2. Text) = True Then

If CDbl (TextBox3. Text) > CDbl (TextBox2. Text) Then

flag = 1

Else

MsgBox «Проверьте введенные данные в поле Цена. «, vbCritical, «Ошибка!»

Exit Sub

End If

Else

MsgBox «Поля От и До должны быть заполнены числами. «, vbCritical, «Ошибка!»

Exit Sub

End If

End If

If TextBox4. Text < > «» And TextBox5. Text < > «» Then

If IsNumeric (TextBox4. Text) = True And IsNumeric (TextBox5. Text) = True Then

If CDbl (TextBox5. Text) > CDbl (TextBox4. Text) Then

flag2 = 1

Else

MsgBox «Проверьте введенные данные в поле Цена. «, vbCritical, «Ошибка!»

Exit Sub

End If

Else

MsgBox «Поля От и До должны быть заполнены числами. «, vbCritical, «Ошибка!»

Exit Sub

End If

End If

With Workbooks («Firms. xls»). Worksheets (ComboBox1. Value)

For ib =. Range («Beg» & num). Row + 1 To ie

If. Cells (ib, 1). MergeCells = True Then

k =. Cells (ib, 1). Row

For beg = k + 1 To ie

If. Cells (beg, 1). MergeCells = False And beg < > ie Then

If flag = 1 And flag2 = 0 Then

If. Cells (beg, 3). Value >= CDbl (TextBox2. Text) _

And. Cells (beg, 3). Value <= CDbl (TextBox3. Text) Then

Workbooks («Main. xls»). Worksheets («ПоискПутевки»). Cells (i, 1). Value = ComboBox1. Value

Workbooks («Main. xls»). Worksheets («ПоискПутевки»). Cells (i, 2). Value =. Cells (k, 1). Value

Workbooks («Main. xls»). Worksheets («ПоискПутевки»). Cells (i, 3). Value =. Cells (beg, 1). Value

Workbooks («Main. xls»). Worksheets («ПоискПутевки»). Cells (i, 4). Value =. Cells (beg, 2). Value

Workbooks («Main. xls»). Worksheets («ПоискПутевки»). Cells (i, 5). Value =. Cells (beg, 3). Value

Workbooks («Main. xls»). Worksheets («ПоискПутевки»). Cells (i, 6). Value =. Cells (beg, 4). Value

Workbooks («Main. xls»). Worksheets («ПоискПутевки»). Cells (i, 7). Value =. Cells (beg, 5). Value

Workbooks («Main. xls»). Worksheets («ПоискПутевки»). Cells (i, 8). Value =. Cells (beg, 6). Value

Workbooks («Main. xls»). Worksheets («ПоискПутевки»). Cells (i, 9). Value =. Cells (beg, 7). Value

Workbooks («Main. xls»). Worksheets («ПоискПутевки»). Cells (i, 10). Value =. Cells (beg, 8). Value

Workbooks («Main. xls»). Worksheets («ПоискПутевки»). Cells (i, 11). Value =. Cells (beg, 9). Value

Workbooks («Main. xls»). Worksheets («ПоискПутевки»). Cells (i, 12). Value =. Cells (beg, 10). Value

Оформить i, maxi

i = i + 1

End If

End If

If flag2 = 1 And flag = 0 Then

If. Cells (beg, 5). Value >= CDbl (TextBox4. Text) _

And. Cells (beg, 5). Value <= CDbl (TextBox5. Text) Then

Workbooks («Main. xls»). Worksheets («ПоискПутевки»). Cells (i, 1). Value = ComboBox1. Value

Workbooks («Main. xls»). Worksheets («ПоискПутевки»). Cells (i, 2). Value =. Cells (k, 1). Value

Workbooks («Main. xls»). Worksheets («ПоискПутевки»). Cells (i, 3). Value =. Cells (beg, 1). Value

Workbooks («Main. xls»). Worksheets («ПоискПутевки»). Cells (i, 4). Value =. Cells (beg, 2). Value

Workbooks («Main. xls»). Worksheets («ПоискПутевки»). Cells (i, 5). Value =. Cells (beg, 3). Value

Workbooks («Main. xls»). Worksheets («ПоискПутевки»). Cells (i, 6). Value =. Cells (beg, 4). Value

Workbooks («Main. xls»). Worksheets («ПоискПутевки»). Cells (i, 7). Value =. Cells (beg, 5). Value

Workbooks («Main. xls»). Worksheets («ПоискПутевки»). Cells (i, 8). Value =. Cells (beg, 6). Value

Workbooks («Main. xls»). Worksheets («ПоискПутевки»). Cells (i, 9). Value =. Cells (beg, 7). Value

Workbooks («Main. xls»). Worksheets («ПоискПутевки»). Cells (i, 10). Value =. Cells (beg, 8). Value

Workbooks («Main. xls»). Worksheets («ПоискПутевки»). Cells (i, 11). Value =. Cells (beg, 9). Value

Workbooks («Main. xls»). Worksheets («ПоискПутевки»). Cells (i, 12). Value =. Cells (beg, 10). Value

Оформить i, maxi

i = i + 1

End If

End If

If flag2 = 1 And flag = 1 Then

If. Cells (beg, 5). Value >= CDbl (TextBox4. Text) And _

. Cells (beg, 5). Value <= CDbl (TextBox5. Text) And _

. Cells (beg, 3). Value >= CDbl (TextBox2. Text) And _

. Cells (beg, 3). Value <= CDbl (TextBox3. Text) Then

Workbooks («Main. xls»). Worksheets («ПоискПутевки»). Cells (i, 1). Value = ComboBox1. Value

Workbooks («Main. xls»). Worksheets («ПоискПутевки»). Cells (i, 2). Value =. Cells (k, 1). Value

Workbooks («Main. xls»). Worksheets («ПоискПутевки»). Cells (i, 3). Value =. Cells (beg, 1). Value

Workbooks («Main. xls»). Worksheets («ПоискПутевки»). Cells (i, 4). Value =. Cells (beg, 2). Value

Workbooks («Main. xls»). Worksheets («ПоискПутевки»). Cells (i, 5). Value =. Cells (beg, 3). Value

Workbooks («Main. xls»). Worksheets («ПоискПутевки»). Cells (i, 6). Value =. Cells (beg, 4). Value

Workbooks («Main. xls»). Worksheets («ПоискПутевки»). Cells (i, 7). Value =. Cells (beg, 5). Value

Workbooks («Main. xls»). Worksheets («ПоискПутевки»). Cells (i, 8). Value =. Cells (beg, 6). Value

Workbooks («Main. xls»). Worksheets («ПоискПутевки»). Cells (i, 9). Value =. Cells (beg, 7). Value

ПоказатьСвернуть
Заполнить форму текущей работой