- •Норинский л. Ю. Программирование на Visual Basic и Visual Basic for Applications (Конспект лекций)
- •Введение
- •1. Основы языка программирования visual Basic
- •1.1. Общие сведения о Visual Basic
- •1.2. Среда vb, инструментальные средства. Разработка проектов
- •1.3. Типы данных. Константы и переменные
- •1.4. Операции
- •1.5. Ввод и вывод данных
- •1.6. Управляющие операторы
- •1.7. Массивы
- •1.8. Примеры программ работы с числами
- •1.9. Обработка строк. Примеры
- •1.10. Математические вычисления. Другие операторы и функции
- •1.11. Процедуры и функции. Примеры
- •1.12. Работа с файлами
- •1.13. Обработка ошибок
- •2. Разработка интерфейса
- •2.1. Элементы управления
- •2.1.1. Общие сведения
- •2.1.2. Встроенные эу
- •2.1.3. Внедренные и связанные эу
- •2.2. Разработка форм
- •2.3. Создание и использование меню
- •2.4. Окна диалога
- •3. Классовое общество
- •3.1. Классы-формы
- •3.2. Модули классов и стандартные модули
- •3.3. Управление событиями объекта
- •3.4. Семейства и массивы объектов
- •4. Vba. Макропрограммирование
- •4.1. Общие сведения о vba
- •4.2. Работа в Excel с помощью vba
- •4.2.1. Объекты Application и семейство Workbooks
- •4.2.2. Объекты Worksheet и Worksheets
- •4.2.3. Объект Range
- •4.3. Макропрограммирование
- •4.4. Создание макросов в Word
- •4.5. Создание макросов в Excel
- •4.6. Пример макроса
- •Приложения п1. Некоторые виды ошибок
- •П2. Свойства элементов управления
- •П3. Методы работы с элементами управления
- •П4. Примеры проектов vb Проект 1.
- •Проект 2.
- •Проект 3.
- •Проект 4.
- •Проект 5.
- •Проект 6.
- •Проект 8.
- •Проект 11.
- •П5. Пример ПроектА vba.
- •Литература
Проект 2.
В данном проекте рассматривается построение простого списка с использованием пользовательского диалога. Проекту присвоено имя Pro2.
При разработке проекта создаются следующие формы:
1. Загрузочная форма Form200, которая отличается от формы Form100 проекта Pro1 только значением Caption = Построение простого списка с использованием пользовательского диалога;
2. Форма пользовательского диалога frmDialog201 со свойствами Caption = Пользовательский диалог создания списка и Visible = True; остальные свойства имеют значения, аналогичные остальным ЭУ; в форме содержатся следующие элементы управления:
а) txtZAGOLOVOK – также как для frmSPISOK в Pro1,
б) метки lblLabel1 с Caption = Фамилия, lblLabel2 с Caption = Имя, lblLabel3 с Caption = Отчество, lblLabel4 с Caption = как у Label1 для frmSPISOK в Pro1;
в) текстовые поля txtFamiliy, txtName, txt Otchestvo – также как у txtZAGOLOVOK для frmSPISOK101 в Pro1;
г) командные кнопки cmdCommand201 с Caption = Ввести, cmdCommand202 с Caption = Очистить, cmdCommand203 с Caption = Окончить;
3. Форма простого списка frmSPISOK201, аналогичная frmSPISOK101 в Pro1.
Форма пользовательского диалога имеет следующий вид:
Ввод записи в список осуществляется щелчком на кнопке Ввести после заполнения соответствующих полей (Фамилия, Имя и Отчество); перед набором следующей записи щелкнуть на кнопке Очистить; для завершения ввода записей щелкнуть на кнопке Окончить.
Процедуры проекта имеют следующий состав:
1) модуль процедур общего назначения под именем Mod1
' ПОСТРОЕНИЕ ПРОСТОГО СПИСКА С ИСПОЛЬЗОВАНИЕМ
' ПОЛЬЗОВАТЕЛЬСКОГО ДИАЛОГА
Public NG As Integer 'Номер группы
Sub Main()
NG = InputBox("Введите № группы")
frmSPISOK201.Form_Load
frmDialog201.Form_Load
frmDialog201.Show vbModal
frmSPISOK201.Show
End Sub
2) процедуры обработки событий форм
' Процедуры обработки событий формы Form200
Private Sub Command101_Click()
Mod1.Main
End Sub
Private Sub Command102_Click()
End
End Sub
' Процедуры обработки событий формы frmDialog201
Public Sub cmdCommand201_Click()
frmSPISOK201.lstGrup.AddItem _
txtFamiliy.Text & " " & _
txtName.Text & " " & _
txtOtchestvo.Text
End Sub
Public Sub cmdCommand202_Click()
txtFamiliy.Text = ""
txtName.Text = ""
txtOtchestvo.Text = ""
End Sub
Public Sub cmdCommand203_Click()
frmDialog201.Hide
End Sub
Public Sub Form_Load()
txtZAGOLOVOK_Change
End Sub
Public Sub txtZAGOLOVOK_Change()
txtZAGOLOVOK.Text = "Список группы " & Str(Mod1.NG)
End Sub
' Процедуры обработки событий формы frmSPISOK201
Public Sub Form_Load()
txtZAGOLOVOK_Change
End Sub
Public Sub txtZAGOLOVOK_Change()
txtZAGOLOVOK.Text = "Список группы " & Str(Mod1.NG)
End Sub
Проект 3.
Построение комбинированного списка. Проекту присвоено имя Pro3.
При разработке проекта создаются следующие формы:
1. Загрузочная форма Form300, которая отличается от формы Form100 проекта Pro1 только значением Caption = Построение комбинированного списка (для метки Label301);
2. Форма frmSPISOK301, со свойствами Name = frmSPISOK301 и Caption = Комбинированный список, содержащая следующие элементы управления:
а) метки lblHelp с Caption = После набора записи 2 раза нажать Tab; очистить текстовое поле, lblSHAPKA с Caption = Ф.И.О. | № зачетки;
б) комбинированный список cboGRUPA со значениями Name = cboGRUPA, Style = 0 – DropdownCombo (текстовое поле и открывающийся список); остальные свойства такие же как для frmSPISOK101 в Pro1.
Форма frmSPISOK301 имеет следующий вид:
Проект имеет следующий состав процедур:
модуль процедур общего назначения под именем Mod1
' СОЗДАНИЕ КОМБИНИРОВАННОГО СПИСКА
Public NG As Integer 'Номер группы
Sub Main()
NG = InputBox("Введите № группы")
frmSPISOK301.Form_Load
frmSPISOK301.Show
frmSPISOK301.cboGRUPA_LostFocus 'Процедура добавления к списку очередной записи
End Sub
процедуры обработки событий форм
'Процедуры обработки событий формы Form300
Private Sub Command101_Click()
Mod1.Main
End Sub
Private Sub Command102_Click()
End
End Sub
'Процедуры обработки событий формы frmSPISOK301
Public Sub Form_Load()
txtZAGOLOVOK_Change
End Sub
' Процедура добавления к списку очередной записи
' при возникновении события LostFocus, т. е. когда текстовое
' поле становится неактивным после нажатия Tab при завершении
' ввода в него текста очередной записи
Public Sub cboGRUPA_LostFocus()
cboGRUPA.AddItem cboGRUPA.Text
End Sub
Public Sub txtZAGOLOVOK_Change()
txtZAGOLOVOK.Text = "Список группы " & Str(Mod1.NG)
End Sub