Шестаков В.С. Оптимизация параметров горных машин. Учебное пособие (811777), страница 40
Текст из файла (страница 40)
Выполняем набор с клавиатуры кода программы (в отдельные вподпрограммы выделен ввод данных и расчет, процедура «Прямоугольник» использована как общая для вызова остальныхпроцедур, передача данных выполнена через аргументы).Option ExplicitSub Прямоугольник()Dim A, BCall Ввод(A, B)Call Расчет(A, B)End SubSub Ввод (A, B)A = Worksheets("Лист1").Range("B2")Пример проB = Worksheets("Лист1").Range("B3")граммыEnd SubSub Расчет(A, B)Dim SS=A*BWorksheets("Лист1").Range("B4") = SEnd Sub6. Выполняем отладку программы: компиляция - Debug→Compile VBAProject и устраняем обнаруженныеошибки, пошаговое выполнение – наводим курсор на основную программу (настроку Sub Прямоугольник), нажатиями кнопки F8 на клавиатуре прогоняем желтую полосу по всем строкам программы. После завершенияотладки на листе Excel в ячейке "B4" должно появиться значение 40.При проверке процедуры «Ввод» после прохождения строки В=.., ноеще до выхода из этой процедуры, т.
е. полоса на End Sub, проверяемполучаемые с листа Excel значения (наводим и задерживаем курсор на«А» - должно появиться желтое поле со значением А). При проверкепроцедуры «Расчет» аналогично проверяем, передаются ли значенияпеременных между подпрограммами.7. Устанавливаем кнопку управления для запуска программы: переходим из редактора на лист Excel (можно щелкнуть по значкуMicrosoft Excel строки задач Windows), вызываем на экран панель «Формы» (курсор на любую панель инструментов, щелчок правой кнопки мыши, щелчок левой кнопкой по строке«Формы»),246 щелчок по изображению кнопки на панели «Формы», щелчок по свободному месту листа, в окне «Назначить макрос объекту» щелчок по наименованию «Прямоугольник», щелчок по кнопке «ОК», щелчок по полю внутри кнопки, удаляем «Кнопка1» и набираем слово«Расчет», щелчок по листу Excel вне кнопки – должны исчезнуть маркеры вокругкнопки.8.
Проверяем работу программы: наводим курсор на ячейку «В2» и с клавиатуры вводим 6, нажимаем“Enter”, щелчок по установленной кнопке «Расчет» - в ячейке «В4» должнопоявиться 60. Пример создания формы с элементами управленияРассмотрим создание формы, показанной на рис. П.2.13. Дляпроверки работы формы и передачиданных вместо реальных вычисленийв процедуру включим сообщенияMsgBox.Последовательность действий будет следующей: перейти в окно редактора с листаExcel (щелчок по кнопке «Редактор»на панели «Visual Basic»);вывести окно свойств (нажать клавишуF4иличерезменю«View→Properties Window»);вставить форму (через меню «Insert» → «UserForm»);Рис.
П.2.13. Пример формызадать форме имя «Параметры» (щелкнуть по полю ввода «Name»,удалить название UserForm1 и ввести слово «Параметры»);задать надпись для верхней строки формы (щелкнуть по полю ввода«Caption», удалить название UserForm1 и ввести «Расчет параметровлебедки»);установить на форму рамку и задать ей свойства (щелкнуть по элементу «Frame» на панели элементов, навести курсор на форму, нажать левую кнопку и, не отпуская ее, прорисовать рамку нужных247размеров, в поле «Name» задать имя «Схема», в поле «Caption» ввести «Конструктивная схема лебедки»;установить переключатель внутрь рамки и задать ему свойства(щелкнуть по элементу «OptionButton» на панели элементов, навестикурсор на форму, нажать левую кнопку и, не отпуская ее, прорисоватьрамку нужных размеров, в поле «Name» задать имя «Однобарабанная», в поле «Caption» ввести «Однобарабанная»;аналогично установить второй переключатель с именем и надписью«Двухбарабанная»;установить поле и задать ему свойства (щелкнуть по элементу«TextBox» на панели элементов, навести курсор на форму, нажать левую кнопку и, не отпуская ее, прорисовать рамку нужных размеров, вполе «Name» задать имя «Усилие», в поле «Value» ввести 100 – этозначение будет появляться в поле при загрузке формы ;аналогично установить второе поле с именем и надписью «Скорость»,со значением 2,5;установить надпись и задать ей свойства (щелкнуть по элементу«Label» на панели элементов, прорисовать рамку нужных размеров, вполе «Caption» ввести «Номинальная нагрузка на крюке, кН»;аналогично установить вторую надпись «Номинальная скорость,м/с»;установить флажок и задать ему свойства (щелкнуть по элементу«CheeckBox» на панели элементов, прорисовать рамку нужных размеров, в поле «Name» задать имя «Вывод», в поле «Caption» ввести«Вывод промежуточных результатов»;установить кнопку и задать ей свойства (щелкнуть по элементу«CommandButton» на панели элементов, прорисовать рамку нужныхразмеров, в поле «Name» задать имя «OK», в поле «Caption» ввести«OK»;выполнить двойной щелчок по кнопке «ОК» и дополнить процедуруследующими строками:Private Sub ОК_Click()If Однобарабанная.Value ThenMsgBox ("Принята конструктивная схема: 'Однобарабанная лебедка'")End IfIf Двухбарабанная.Value ThenMsgBox ("Принята конструктивная схема: 'Двухбарабанная лебедка'")248End IfIf Вывод.Value ThenMsgBox ("Будет осуществлен вывод промежуточных данных")End IfMsgBox ("Введено усилие на крюке " & Усилие & " кН")MsgBox ("Введена номинальная скорость " & Скорость & " м/с")Настройка.Hide ‘Команда удаления формы с экранаEnd Sub; вернуться на лист Excel (щелкнуть по кнопке Microsoft Excel в строкезадач Windows); вызвать панель «Элементы управления» и установить на лист кнопку; щелкнуть по кнопке «Свойства» на панели «Элементы управления» изадать свойства кнопке (если у кнопки нет маркеров, то необходимопо ней щелкнуть, а затем в поле «Name» задать имя «Вызов», в поле«Caption» ввести «Вызов формы»; щелкнуть по кнопке «Исходный текст» на панели «Элементы управления» и добавить строку вызова формы Параметры.Schow, в результате процедура, которая вызывается кнопкой, будет иметь видPrivate Sub Вызов_формы_Click()Параметры.ShowEnd Sub; щелкнуть по кнопке «Выход из режима конструктора» на панели«Элементы управления» (маркеры вокруг кнопки должны исчезнуть); щелкнуть по установленной на листе Excel кнопке – на экране должнапоявиться форма, приведенная на рис.
П.2.13, в форме можно ввестидругие значения усилия и скорости, установить флажок для выводапромежуточных результатов, щелкнув по кнопке ОК, после чего наэкране последовательно будут выводиться панели с информацией икнопкой ОК, для продолжения необходимо щелкать по этой кнопке.Пример программы с формой249Заявки на книгу направлять по адресу:620144, г. Екатеринбург, ул. Куйбышева, 30.Уральский государственный горный университет,кафедра горных машин и комплексовУчебное изданиеВиктор Степанович ШестаковОптимизация технических объектовУчебное пособиеРедактор Л.
В. УстьянцеваПодписано в печатьБумага писчая. Формат 60х84 1/16Печать офсетная. Печ. л. 14,25. Уч.-изд. л. 14,0. Тираж 200. Заказ №Информационно-издательский центр620144, г.Екатеринбург, ул. Куйбышева, 30Уральский государственный горный университет.