Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Avtomatizatsia_Excel-prilozheny_Tarasyuk_V_B.doc
Скачиваний:
6
Добавлен:
10.11.2019
Размер:
407.55 Кб
Скачать

4.3. Правила присвоения имен в vb

При присвоении имен процедурам, константам, переменным и аргументам в модулеVisual Basic используются следующие правила:

  • имена должны начинаться с буквы;

  • имя не может содержать пробел, точку (.), восклицательный знак (!) или символы @, &, $, #;

  • имена не должны содержать более 255 символов;

  • как правило, не используются имена, совпадающие с названиями функций, инструкций и методов языка Visual Basic, так как при этом прекращается выделение в тексте одноименных ключевых слов языка (Чтобы использовать встроенные функции языка, инструкции или методы, имена которых конфликтуют с присвоенным пользователем именем, их необходимо явно указывать. Для этого перед именем встроенной функции, инструкции или метода, должно стоять имя связанной с ними библиотеки типов. Например, если имеется переменная с именем Left, то функция Left должна вызываться как VBA.Left.);

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

4.4. Проверка синтаксических ошибок

Если после набора строки и нажатия клавиши ENTER строка выделяется красным цветом (может появиться также сообщение об ошибке), необходимо выяснить, что неправильно в данной инструкции, и исправить ее.

V. Пример создания приложения

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

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

Поставленные в общем виде требования должны быть уточнены и сформулированы в виде задач:

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

  2. хранение информации о реквизитах предприятия-оператора;

  3. хранение бланка билета;

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

  5. распечатывание билета или пустого бланка билета;

  6. автоматическое обновление оставшихся свободных мест в процессе работы приложения;

  7. автоматизированная реинициализация системы в начале рабочего дня.

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

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

Рис.3. Блок-схема информационной модели приложения

После уточнения информационной модели создаются макеты таблиц для хранения данных и форма билета. Таблица, предназначенная для хранения данных о маршрутах, помещается на рабочем листе «Расписание». Макет этой таблицы приведен на рис. 4.

A

B

C

D

E

F

G

1

Пункт

назначения

Рейс

Время отправления

Время в пути

Тариф

Место

Свободных мест

2

Воронеж

24

07:30

5

110

19

22

3

Воронеж

33

12:00

5

110

5

36

4

Белгород

55

8:20

2

55

8

33

5

Белгород

74

11:50

3

55

5

34

6

Орел

55

13:45

4

50

39

2

7

Железногорск

76

15:00

2

70

0

0

8

Москва

55

13:05

9

250

0

0

9

Москва

45

19:30

9

220

23

10

Харьков

67

12:40

5

170

27

11

12

13

Рис.4. Фрагмент таблицы «Расписание»

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

A

B

C

D

E

F

G

1

Наименование предприятия

Центральный автовокзал

2

Город

Курск

3

Касса №

4

4

Рис.5. Фрагмент рабочего листа «Реквизиты»

Таблица для хранения сведений о льготах и их размерах размещена на рабочем листе «Льготы» и показана на рис.6.

A

B

C

D

Е

F

1

Дети до 9 лет

50%

0.5

детский

2

Дети до 16 лет

25%

0.25

детский

3

Ветераны

50%

0.5

льготный

4

Инвалиды

70%

0.7

льготный

5

Военнослужащие

60%

0.6

6

Рис.6. Фрагмент рабочего листа «Льготы»

Примерная форма заполненного бланка билета размещена на рабочем листе “Билет” и показана на Рис.7.

A

B

C

D

E

F

G

1

Билет

2

Центральный автовокзал

3

г. Курск

4

Касса №

2

5

6

Пункт назначения

Москва

7

Время отправления

12:20

8

Время в пути

9 час

9

Тип

полный

10

Место №

21

11

Стоимость

220 р.

12

Дата продажи

22/11/02

13

Время продажи

09:44

14

15

Рис.7. Фрагмент рабочего листа “Билет”

Следующим шагом является создание диалоговой формы. Для этого в Excel выбрать меню Сервис – Макрос – Редактор Visual Basic. Затем в среде Visual Basic выбрать пункт Insert – UserForm (Вставка – Форма). Поместить на форму элементы управления: кнопки, списки, поля ввода и т.п., необходимые для связывания информационных объектов приложения. Общий вид формы показан на рис. 8.

Рис.8. Диалоговая форма

Для вывода диалоговой формы непосредственно из среды Excel необходимо написать специальный модуль. В меню Insert выбрать пункт Module (Модуль). В открывшемся окне модуля написать:

Sub Bilet ()

UserForm1. Show

End Sub

После закрытия окна модуля и возвращения в среду Excel выбрать пункт Сервис – Макрос – Макросы. В списке открывшегося окна макросов появится строка с именем вновь созданного модуля Bilet. Щелчок мыши по кнопке «Открыть» приведет к появлению диалоговой формы UserForm1.

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

Таблица 2

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]