Элемент управления RefEdit (Поле со свёртыванием) 


Мы поможем в написании ваших работ!



ЗНАЕТЕ ЛИ ВЫ?

Элемент управления RefEdit (Поле со свёртыванием)



Элемент управления RefEdit (Поле со свёртыванием) аналогичен полю ввода, но позволяет вводить в него ссылку на диапазон выбором на рабочем листе. Свойство Value возвращает эту ссылку.

В качестве примера[1] использования элемента управления RefEdit используем проект, определяющий некоторые статистические параметры диапазона, а именно максимальное, минимальное значения и сумму всех значений ячеек этого диапазона. Создаётся форма, на которой расположены две кнопки: CommandButton1 и CommandButton2 и элемент управления RefEdit (рис. 30). Кнопка CommandButton1 предназначена для задания значения диапазона элемента управления RefEdit, а кнопка CommandButton2 – для выгрузки формы. Форма, приведённая на рис. 31, загружается при выполнении процедуры Статистика2:

Sub Статистика2()

Статистика.Show

End Sub

находящейся в стандартном модуле Module1.

Рис. 15. Проект формы

Рис.16. Загруженная форма

Для задания диапазона необходимо сделать активным окно элемента управления RefEdit и выделить нужный диапазон Лист1!$A$14:$A$17
(рис. 30). При выделении диапазона размер формы уменьшается, открывая ячейки для его выделения. Отсюда название элемента “Поле со свёртыванием”.

Рис. 17. Выделение диапазона

При нажатии на кнопку ok выполняется следующая процедура модуля формы.

Private Sub CommandButton1_Click()

Dim r As String

Dim min As Double, max As Double, s As Double

 

r = RefEdit1.Value

Dim rgn As Range

Set rgn = Range

min = WorksheetFunction.min(rgn)

max = WorksheetFunction.max(rgn)

s = WorksheetFunction.Sum(rgn)

MsgBox RefEdit1.Value & vbCr & _

“min=” & min & vbCr & _

“max=” & max & vbCr & _

“s=” & s

End Sub

В этой процедуре инструкция r = RefEdit1.Value присваивает переменной r значение ссылки на диапазон, инструкция Dim rgn As Range объявляет переменную rgn как объект Range, а инструкция Set rgn = Range присваивает значение ячеек выбранного диапазона переменной rgn.

Значения свойства Caption формы (Статистика), кнопки CommandButton1 (ok) и кнопки CommandButton2 (Выйти) задаются при инициализации следующей процедуры модуля формы:

Private Sub UserForm_initialize()

Me.Caption = “Статистика”

CommandButton1.Caption = “ok”

CommandButton2.Caption = “Выйти”

End Sub

Удаление формы из памяти осуществляется при нажатии кнопки “Выйти”. При этом возникает событие Click, обрабатываемого следующей процедурой формы:

Private Sub CommandButton2_Click()

Unload Me

End Sub

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

1. Запускается (пользователем или программно) процедура Статистика2.

2. Эта процедура загружает форму Статистика, при инициализации которой выполняется процедура UserForm_initialize.

3. Пользователь выделяет на рабочем листе диапазон значений, на который ссылается элемент управления RefEdit.

4. При нажатии на кнопку ok вызывается процедура CommandButton1_Click, в результате выполнения которой осуществляется подсчёт минимума, максимума и суммы величин выбранного диапазона при помощи свойств Min, Max и Sum объекта WorksheetFunction, представляющие собой одноименные функции рабочего листа и которые выводятся на экран при помощи функции MsgBox (рис. 18).

Рис. 18. Результаты выполнения приложения Статистика

5. При нажатии на кнопку Выйти выполняется процедура CommandButton2_Click,в результате чего форма СТАТИСТИКА выгружается.



Поделиться:


Последнее изменение этой страницы: 2016-12-30; просмотров: 281; Нарушение авторского права страницы; Мы поможем в написании вашей работы!

infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 3.145.105.105 (0.007 с.)