Лекции.Орг


Поиск:




Категории:

Астрономия
Биология
География
Другие языки
Интернет
Информатика
История
Культура
Литература
Логика
Математика
Медицина
Механика
Охрана труда
Педагогика
Политика
Право
Психология
Религия
Риторика
Социология
Спорт
Строительство
Технология
Транспорт
Физика
Философия
Финансы
Химия
Экология
Экономика
Электроника

 

 

 

 


Кнопка на рабочем листе создается с помощью Панели инструментов Формы (Элементы управления). Макрос назначается двойным щелчком левой кнопки мыши или с помощью контекстного меню




Работа с формами.

 

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

Ввод информации часто осуществляется с помощью клавиатуры и мыши.

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

Примером таких форм служат диалоги в программах VBA.

Создать окно диалога можно двумя способами.

1 способ: С помощью контекстного меню на ярлыке листа выберите команду ИСХОДНЫЙ ТЕКСТ. В появившемся окне выберите команду ВСТАВКА - UserForm.

2 способ: Выберите команду СЕРВИС - МАКРОС - РЕДАКТОР VisualBasic и далее ВСТАВКА - UserForm.

В созданном окне диалога пользователь размещает элементы окна (объекты), используя Панель элементов. Выбор объекта и его расположение осуществляется с помощью левой кнопки мыши.

 

Состав Панели элементов

 

Название элемента Имя в программе
Надпись Label
Поле TextBox
Рамка Frame
Кнопка CommandButton
Поле со списком ComboBox
Флажок CheckBox
Переключатель OptionButton
Список ListBox
Полоса прокрутки ScrollBar
Счетчик SpinButton

Существуют и другие элементы.

В программе все имена объектов имеют номер. Например, если создать в окне диалога флажок, то его имя в программе будет CheckBox1.

Надпись Используется для создания текстовых вставок в окне.

Поле Используется для ввода(вывода) текста.

Рамка Обеспечивает объединение нескольких элементов диалогового окна в группу.

Кнопка Командная кнопка, которой назначается процедура или макрос.

Поле со списком Представляет собой комбинацию выпадающего списка.

Флажок Обеспечивает аддитивный выбор значения. Свойство Value принимает значение True, если флажок выбран и False – в противном случае.

Переключатель Обеспечивает альтернативный выбор из списка взаимоисключающихся опций. Такие переключатели входят в состав группы, если они различны по назначению. Выбор одного переключателя внутри группы означает автоматический не выбор других. Свойство Value принимает значение True, если переключатель выбран и False – в противном случае.

Список Представляет собой окно, содержащее список значений.

Полоса прокрутки Создает горизонтальную или вертикальную линейку прокрутки. Свойство Value содержит число, соответствующее положению ползунка. Свойства Min и Max управляют диапазоном значений.

Счетчик Регулятор счетчика (спиннер) аналогичен линейке прокрутки.

 

Примеры создания программ для работы с объектами окна диалога

 

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

На рабочем листе "Лист1" создать ЭТ следующего вида:

А B C D

1 Фамилия Имя

 

 

Создадим форму, которая будет содержать 2 поля для ввода текста (имени и фамилии), 2 надписи и 2 кнопки. При нажатии кнопки ВВОД информация из текстовых полей будет записываться в ЭТ, а при нажатии кнопки КОНЕЦ будет происходить выход из программы.

 

 

Label2
TextBox2
CommandButton2

 

 

TextBox1
CommandButton1
Label1
 

 

Установим свойства объектов:

Объект Свойство Значение
Label1 Caption Фамилия
Label2 Caption Имя
CommandButton1 Caption Ввод
CommandButton2 Caption Конец

 

Кнопке КОНЕЦ назначим процедуру:

Private Sub CommandButton2_Click()

End

End Sub

Кнопке ВВОД назначим процедуру:

Option Explicit

Private Sub CommandButton1_Click()

Dim Фамилия, Имя As String

Dim Row As Integer

Row = Application.CountA(Sheets("Лист1").Range("А:А")) + 1

With UserForm1

Фамилия =.TextBox1.Text

Имя =.TextBox2.Text

End With

With Sheets("Лист1")

.Cells(Row, 1).Value = Фамилия

.Cells(Row, 2).Value = Имя

End With

With UserForm1

.TextBox1.Text = ""

.TextBox2.Text = ""

End With

End Sub

Некоторые объяснения к программе:

В VBA диапазон "А:А" означает столбец А. Функция СЧЕТЗ в русскоязычной версии Еxcel подсчитывает число непустых ячеек в выделенном диапазоне. Ее эквивалентом в англоязычной версии является функция CountA. Т.о. функция

Row = Application.CountA(Sheets("Лист1").Range("А:А")) + 1

вычисляет число непустых ячеек в столбце А.

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

Оператор With – End With используется для удобства при работе с несколькими свойствами или методами одного и того же объекта.

Например, конструкция

With Sheets("Лист1")

.Cells(Row, 1).Value = Фамилия

.Cells(Row, 2).Value = Имя

End With

без оператора With – End With эквивалентна конструкции вида:

Sheets("Лист1").Cells(Row, 1).Value = Фамилия

Sheets("Лист1").Cells(Row, 2).Value = Имя

Sheets и Cells – это объекты VBA, обозначающие рабочий лист и клетку с соответствующими координатами.

Программа запускается в окне отладчика клавишей F5 или кнопкой "Запуск подпрограммы". Для запуска программы можно также создать командную кнопку на рабочем листе Excel, назначив ей соответствующий модуль. Например, такой

Sub Кнопка1_Щелкнуть()

UserForm1.Show

End Sub

Кнопка на рабочем листе создается с помощью Панели инструментов Формы (Элементы управления). Макрос назначается двойным щелчком левой кнопки мыши или с помощью контекстного меню.

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

 

 

OptionButton1
Label1
CommandButton1

Окно формы имеет вид:

 
OptionButton2
Label2
CommandButton2

 

 

Установим свойства объектов:

 

Объект Свойство Значение
Label1 Caption Муж
Label2 Caption Жен
CommandButton1 Caption Ввод
CommandButton2 Caption Конец

 

 

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

!!! При работе с переключателями необходимо, чтобы свойство Loked для них имело значение False.

 

Кнопке Конец назначим процедуру:

Private Sub CommandButton2_Click()

End

End Sub

Кнопке Ввод назначим процедуру:

Option Explicit

Private Sub CommandButton1_Click()

Dim Пол As String

With UserForm1

If.OptionButton1 = True Then Пол = "Муж"

If.OptionButton2 = True Then Пол = "Жен"

End With

With Sheets("Лист1")

.Cells(1, 1) = Пол

End With

End Sub

 

Пример3. Создать окно диалога, содержащее 2 флажка, 2 надписи и 2 кнопки. Если флажки установлены, то в клетках ЭТ А1 и А2 записывается слово "Да", в противном случае "Нет".

 

CheckBox1
Label1
CommandButton1

Окно формы имеет вид:

CheckBox2
Label2
CommandButton2
 

 

Установим свойства объектов:

 

Объект Свойство Значение
Label1 Caption Оплачено
Label2 Caption Паспорт сдан
CommandButton1 Caption Начало
CommandButton2 Caption Конец

 

Кнопка "Начало" считывает значения флажков, кнопка "Конец" – выход из программы.

!!! При работе с флажками свойствам Locked также устанавливается значение False.

Кнопке Конец назначим процедуру:

Private Sub CommandButton2_Click()

End

End Sub

 

 

Кнопке Начало назначим процедуру:

Option Explicit

Private Sub CommandButton1_Click()





Поделиться с друзьями:


Дата добавления: 2016-09-03; Мы поможем в написании ваших работ!; просмотров: 491 | Нарушение авторских прав


Поиск на сайте:

Лучшие изречения:

Человек, которым вам суждено стать – это только тот человек, которым вы сами решите стать. © Ральф Уолдо Эмерсон
==> читать все изречения...

2316 - | 2171 -


© 2015-2025 lektsii.org - Контакты - Последнее добавление

Ген: 0.009 с.