![]() Заглавная страница Избранные статьи Случайная статья Познавательные статьи Новые добавления Обратная связь FAQ Написать работу КАТЕГОРИИ: ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ТОП 10 на сайте Приготовление дезинфицирующих растворов различной концентрацииТехника нижней прямой подачи мяча. Франко-прусская война (причины и последствия) Организация работы процедурного кабинета Смысловое и механическое запоминание, их место и роль в усвоении знаний Коммуникативные барьеры и пути их преодоления Обработка изделий медицинского назначения многократного применения Образцы текста публицистического стиля Четыре типа изменения баланса Задачи с ответами для Всероссийской олимпиады по праву ![]() Мы поможем в написании ваших работ! ЗНАЕТЕ ЛИ ВЫ?
Влияние общества на человека
Приготовление дезинфицирующих растворов различной концентрации Практические работы по географии для 6 класса Организация работы процедурного кабинета Изменения в неживой природе осенью Уборка процедурного кабинета Сольфеджио. Все правила по сольфеджио Балочные системы. Определение реакций опор и моментов защемления |
ПЗ-10. Использование макросов и модулей VBA для других задач.Содержание книги
Поиск на нашем сайте
Создадим новый лист Модули. Напишем макрос для заполнения столбца F листа геометрической прогрессией. Вызываем вкладкой Разработчик кнопку Начать запись, в окне Запись макроса задаем имя ГеомПрогр, нажимаем ОК и дальше выполняем действия для построения прогрессии: в ячейку F1 вводим число 2, нажимаем зеленую галочку, вызываем окно Прогрессия, в нем выбираем пункты: по столбцам, геометрическая, шаг 2, предельное значение 100000, кнопка ОК, прекращаем запись макроса. Наносим кнопку из панели Элементы управления формы (РазработчикàВставить) на лист и назначаем ей макрос ГеомПрогр, на кнопке пишем название: "Построить геометрическую прогрессию". Сразу же напишем макрос очистки столбца F: вызовем окно записи, присвоим имя Очистка, нажмем ОК и выделим диапазон F1:F20, нажмем кнопку Delete, щелкнем по ячейке G4, прекратим запись макроса. Нанесем новую кнопку рядом с кнопкой построения прогрессии, присвоим ей макрос Очистка, изменим надпись кнопки: "Очистить столбец F". Пощелкаем созданными кнопками. Нажмем сочетание клавиш Alt+F8 ( вызов окна Макросы), выберем макрос Очистка, нажмем кнопку Войти. Появится окно с модулем VBA, где активной будет запись программы Очистка (Sub Очистка()). В этой программе перечислены операторы, которые мы задавали при записи макроса своими действиями. Sub Очистка() ' Очистка Макрос ' Макрос записан... Range("F1:F20").Select Selection.Clear Range("G4").Select End Sub Можно, при необходимости, изменить действия макроса (программы) прямо в данном модуле. Нанесем на лист еще одну кнопку и присвоим ей макрос Возврат. Затем перейдем на титульный лист, напишем макрос ОткрМодули для открытия листа Модули и присвоим его кнопке открытия. Теперь на листе Модули сделаем так, чтобы при нажатии специальной кнопки на лист помещалась новая кнопка, на ней появлялась надпись "новая кнопка", а в ячейке А3 производился подсчет количества созданных новых кнопок. Для подсчета новых кнопок объявим переменную n% (объявление в качестве целого числа) в области объявления переменных, там же поместим декларацию "Option Explicit", которая будет инициировать проверку описания встречаемых в программе переменных. В программу макроса открытия листа Модули добавим операторы присвоения нуля переменной n и записи этого значения в ячейку А3.
Option Explicit Dim n% Sub ОткрМодули() ' Функция Макрос' Макрос записан... n = 0 ActiveWindow.ScrollWorkbookTabs Position:=xlLast Sheets(" Модули ").Select Range("A3").Select ActiveCell.FormulaR1C1 = n ' Запись 0 в ячейку А3 End Sub Запишем макрос (КнопкаAdd - его программа приведена ниже), выполнив все действия по добавлению новой кнопки и изменению надписи на ней. Присвоим этот макрос кнопке с названием "Добавить новую кнопку!". Щелчки по ней будут добавлять на лист новую кнопку. Однако необходимо вести подсчет новых (добавленных) кнопок. Для этого в программе макроса КнопкаAdd необходимо значение переменной n увеличивать на единицу при добавлении каждой новой кнопки. Поэтому в программе макроса КнопкаAdd необходимо добавить операторы (ниже в распечатке программы они находятся в конце и выделены полужирным курсивом). Sub КнопкаAdd() ' КнопкаAdd Макрос ' Макрос записан.... ActiveSheet.Buttons.Add(399.75, 110.25, 127.5, 29.25).Select Selection.Characters.Text = "новая кнопка" With Selection.Characters(Start:=1, Length:=12).Font .Name = "Arial Cyr" .FontStyle = "обычный" .Size = 12 … .ColorIndex = xlAutomatic End With n = n + 1 Range("A3").Select ActiveCell.FormulaR1C1 = n End Sub Обнуление переменной n будет производиться при открытии листа Модули (распечатка программы ОткрМодули приведена выше). Щелкая по кнопке "Добавить новую кнопку!" будем на листе добавлять кнопки с надписью "новая кнопка" одну над другой – если не вести учет в ячейке А3, то не будем знать, сколько всего добавлено кнопок.
|
|||||
Последнее изменение этой страницы: 2017-01-20; просмотров: 355; Нарушение авторского права страницы; Мы поможем в написании вашей работы! infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 18.223.99.16 (0.009 с.) |