- •Кафедра учета, анализа и аудита
- •«Компьютерные системы и сети»
- •Часть 2. Программирование на vba
- •Введение
- •Тема № 1 создание пользовательских функций
- •Тема № 2 пользовательские процедуры
- •Тема 2.1 Ввод записей в базу данных
- •Тема 2.2 Поиск уникальной записи по указанным критериям
- •Тема 2.3 Расчет итоговых показателей по всем и группе записей.
- •Тема 2.4 Поиск записей согласно критериям.
- •Тема № 3 отладка программ и обработка ошибок
- •Тема № 4 проектирование пользовательских форм для ввода-вывода информации
- •Тема 4.1 Использование формы в процедуре Auto_Open
- •Тема 4.2 Ввод новой записи в форме, обработка записей
- •Тема № 5 проектирование системного меню и справочной информации
- •Приложение
- •Оглавление
Тема № 5 проектирование системного меню и справочной информации
Достоинством ExcelдляWindowsявляется достаточно гибкий для настройки интерфейс. Пользователь может создавать и настраивать панели инструментов, кнопки, строки меню, проектировать собственную справочную информацию.
Хорошим способом работы со справочной информацией является помощник. В любой ситуации у него имеется подсказка, как правильно совершить то или иное действие, как преодолеть те или иные трудности. Кроме того, он может принимать образы различных героев, обладает выразительной мимикой, подвижен и разговорчив.
Ниже приведен текст процедуры, выполняющейся при нажатии на кнопку формы. Процедура активизирует помощника, управляет его движением и воспроизводит указанный текст – комментарий.
Private Sub CommandButton1_Click()
Set helper = Assistant.NewBalloon
Assistant.Animation = msoAnimationThinking
Assistant.Sounds = True
With helper
.BalloonType = msoBalloonTypeButtons
.Heading = "ПК - наш лучший друг"
.Text = "Неоспоримые истины"
.Labels(1).Text = "Информатика - прекрасная наука"
.Labels(2).Text = "КСиС - еще лучше"
.Labels(3).Text = "А знать Internetтехнологии - здорово"
num = .Show
End With
Select Case num
Case 1
MsgBox "Будешь хорошо знать ПК"
Case 2
MsgBox "Узнаешь о сетевых технологиях"
Case 3
MsgBox "Научишься создавать сайт!!!"
End Select
End Sub
Рис. 7
На рис. 7 представлено диалоговое окно, создаваемое помощником Скрепыш.
Задание № 12. Запрограммировать помощника, позволяющего отобразить на экране подсказки по работе с одной из ранее созданных процедур (задания 4, 5, 8, 9, 10, 11) при вводе исходных данных или возникновении ошибок ввода.
Программирование панели инструментов позволяет создавать для приложений собственный интерфейс: исключить из меню и панели инструментов основного системного меню кнопки и команды, не относящиеся к разрабатываемому приложению и добавить новые необходимые средства. Чтобы облегчить программирование, VBAобъединяет меню, панели инструментов и контекстные меню в одну группу.
Ниже представлены процедуры, имеющие цель – создание новой строки меню взамен системного меню, с подменю и вызовом двух процедур.
Sub Личное_меню()
Application.Caption = "Мое приложение"
With Application.CommandBars.Add("Мое меню", , True, True)
.Visible = True
With .Controls
With .Add(Type:=msoControlPopup)
.Caption = "&Меню"
With .Controls
With .Add(Type:=msoControlButton)
.Caption = "Пункт 1"
.OnAction = "Процедура1"
End With
With .Add(Type:=msoControlButton)
.Caption = "Пункт 2"
.OnAction = "Процедура2"
End With
End With
End With
End With
End With
End Sub
SubПроцедура1()
MsgBox"Привет, пользователь ПК"
End Sub
Sub Процедура2()
MsgBox "Еще один привет"
End Sub
На рис. 8 представлен внешний вид приложения в результате работы программы.
Рис. 8
Задание № 13. Создать собственное меню, заменяющее основное меню Excel. Оно должно содержать перечень всех ранее созданных приложений (задания 4, 5, 6, 8, 9, 10, 11).
Литература
Гарнаев Ю.А. Самоучитель VBA. С-Пб.,BHV-Санкт-Петербург, 2001. - 512 с.
Комягин В.Б. Программирование в Excel5 иExcel7 на языкеVisualBasic. М., Радио и связь, 1996. – 156 с.
Назаров С.В., Мельников П.П. Программирование на MSVisualBasic. М., Финансы и статистика, 2002 – 320 с.
Сана П. VisualBasicдля приложений. С-Пб.,BHV-Санкт-Петербург, 1999. - 704 с.