|
VBA7. Сортировка чисел в столбце по возрастанию или убыванию с созданием формы и панели инструментов с кнопкойDate: 2015-10-07; view: 676.
В предыдущих работах, посвященных созданию формы, запуск программы выполнялся с помощью кнопки размещенной на листе Excel. Целью этой работы является создание панели инструментов с кнопкой для выполнения программы. 1. Создайте панель инструментов и разместите на ней кнопку. Панель инструментов должна появляться при открытии рабочей книги. В окне редактора Visual Basic выберите лист ThisWorkBook и включите в него следующие две процедуры: 1) Процедура создания новой панели инструментов при открытии рабочей книги Private Sub Workbook_WindowActivate(ByVal Wn As Excel.Window) 'Создание новой панели инструментов With Application.CommandBars.Add(Name:="Моя панель инструментов", _ Position:=msoBarTop, MenuBar:=False, Temporary:=True) .Visible = True With .Controls 'Создание кнопки с надписью With .Add(Type:=msoControlButton, Id:=1) 'добавить кнопку на панель инструментов .Caption = "Сортировка" 'надпись на кнопке .TooltipText = "Сортировка" 'всплывающая подсказка .Style = msoButtonCaption .OnAction = "Sort" 'при нажатии на кнопку выполняется процедура End With End With End With End Sub
2) Процедура, удаления созданной панели инструментов при закрытии приложения Private Sub Workbook_WindowDeactivate(ByVal Wn As Excel.Window) With Application .CommandBars("Моя панель инструментов").Delete End With End Sub В результате будет создана панель инструментов с кнопкой Сортировка (см. Рис).
2. Добавьте модуль через пункт меню Вставка/Модуль и введите процедуру Sort для отображения формы на экране. Sub Sort() UserForm1.Show End Sub 3. В окне редактора создайте форму, разместите на ней требуемые элементы управления и установите свойства (см. Рис. на следующей стр.). 4. Напишите процедуры, связанные с формой, а также процедуру UserForm_Initialize (задание значений по умолчанию). Private Sub UserForm_Initialize() ' Процедура инициализации формы OB1.Value = True OptionButton1.Value = True SB1.Min = 1 SB1.Max = 100 TB1.Value = SB1.Value SB2.Min = 1 SB2.Max = 100 TB2.Value = SB2.Value
End Sub
5. Напишите процедуры сортировки. Сортировка выбором заключается в том, что требуется найти элемент массива, имеющий наименьшее значение и переставить его с первым элементом, затем проделать то же самое, начав со второго элемента.
|