Функция IsNumeric(Аргумент) возвращает значение True, если аргумент является число и False в противном случае
End Sub
End Sub
End If
Exit Sub
TextBox1.SetFocus
If Not IsNumeric(TextBox1.Text) Then
Dim x As Double, y As Double
End Sub
Private Sub CommandButton1_Click() If Not IsNumeric(TextBox1.Text) Then MsgBox "Аргумент должен быть числом", _ vbExclamation TextBox1.Text = "" TextBox1.SetFocus Exit Sub End If x = CDbl(TextBox1.Text) y = Cos(x) TextBox2.Text = CStr(y) End Sub | Проверка является ли введённое значение числом Вывод окна сообщения Фокус (курсор) устанавливается на поле TextBox1 Досрочный выход из процедуры При считывании числа из поля ввода при помощи функции CDbl строковый тип, возвращаемый свойством Text, преобразуется в числовой Чтобы вывести результат в поле, переводим число в строковый формат при помощи функции CStr |
Private Sub UserForm_Initialize() UserForm1.Caption = "Значение функции Cos(x)" Label1.Caption = "Аргумент" Label2.Caption = "Значение функции" CommandButton1.Caption = "OK" TextBox2.Enabled = False End Sub | Процедура UserForm_Initialize конструирует форму до ее загрузки Инструкция устанавливает текст, отображаемый в строке заголовка формы Инструкции задают видимые надписи для объектов Инструкция делает TextBox2 недоступным для пользователя |
Private Sub CommandButton1_Click()
MsgBox "Аргумент должен быть числом", vbExclamation
TextBox1.Text = ""
x = CDbl(TextBox1.Text)
y = Cos(x)
TextBox2.Text = CStr(y)
Private Sub UserForm_Initialize()
UserForm1.Caption = "Значение функции Cos(x)"
Label1.Caption = "Аргумент"
Label2.Caption = "Значение функции"
CommandButton1.Caption = "OK"
TextBox2.Enabled = False
После конструирования формы и написания кода в модуле формы выберем команду Run ® Run Sub/UserForm, либо нажмем клавишу <F5>, либо кнопку панели инструментов Standard, и форма отобразится поверх активного рабочего листа Excel. Введем значение аргумента и нажмем на кнопку OK.
Рисунок 15 – Вид пользовательской формы
Компонент ListBox(список) применяется для хранения и отображения списка значений. Из списка пользователь может выбрать одно или несколько значений, которые в последующем будут использоваться в тексте программы.
Приводим часто используемые свойства элемента управления ListBox
Таблица свойств компонента ListBox
Свойство | Описание |
ListIndex | Возвращает номер текущего элемента списка. Нумерация элементов списка начинается с нуля |
ListCount | Возвращает число элементов списка |
TopIndex | Возвращает элемент списка с наибольшим номером |
ColumnCount | Устанавливает число столбцов в списке |
Text | Возвращает выбранный в списке элемент |
List | Возвращает элемент списка, стоящий на пересечении указанной строки и столбца. Синтаксис:List(row, column) Кроме того, свойство List задает весь массив элементов списка |
ControlSource | Устанавливает диапазон (ячейку), куда возвращается выбранный элемент из списка |
MultiSelect | Устанавливает способ выбора элементов списка. Допустимые значения: fmMultiSelectSingle - выбор только одного элемента; fmMultiSelectMulti - разрешен выбор нескольких элементов посредством либо щелчка, либо нажатием клавиши <Пробел>); fmMultiSelectExtended - разрешено использование клавиши <Shift> при выборе ряда последовательных элементов списка) |
Selected | Допустимые значения: True (если элемент списка выбран) и False (в противном случае). Используется для определения выделенного текста, когда свойство MultiSelect имеет значение fmMultiSelectMulti или fmMultiSelectExtended |
ColumnWidths | Устанавливает ширину столбцов списка. Синтаксис: ColumnWidths = String String — строка, устанавливающая ширину столбцов. В следующем примере устанавливается ширина каждого из трех столбцов списка: With ListBox1 .ColumnCount = 3 .ColumnWidths = "20;30;30" End With |
ColumnHeads | Допустимые значения: True (выводятся заголовки столбцов раскрывающегося списка) и False (в противном случае) |
Приводим наиболее часто используемые методы элемента управления ListBox в таблице 21.
Таблица 21
Метод | Описание |
Clear | Удаляет все элементы из списка |
RemoveItem | Удаляет из списка элемент с указанным номером. Синтаксис: RemoveItem (index), где index — номер удаляемого из списка элемента |
AddItem | Добавляет элемент в список. Синтаксис: AddItem ( [ Item [, varIndex]]) Item— элемент (строковое выражение), добавляемый в список varIndex — номер добавляемого элемента |
Заполнить список можно одним из следующих способов.
1 Поэлементно, если список состоит из одной колонки