Создание и использование макросов 


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



ЗНАЕТЕ ЛИ ВЫ?

Создание и использование макросов



Задание 1

 

1. Запустите Excel

2. Включите режим записи макроса, для чего выберите режим Сервис„Макрос„Начать запись.

В открывшемся меню Запись макроса введите имя макроса, например МакросПроверка, и присвойте ему комбинацию клавиш – Ctrl+z.

Нажмите кнопку меню OK и приготовьтесь к началу записи макроса в виде последовательности команд, выполняемых на рабочем листе Excel.

3. Введите в ячейку А1 первого рабочего листа чистой книги слово Проверка. Введите в ячейку А2 число 26 и число 15 в ячейку В2. Остановите запись макроса нажатием кнопки Остановить запись.

4. Очистите область А1:С3 рабочего листа и вызовите на выполнение макрос МакросПроверка с помощью комбинации клавиш Ctrl+z.

5. Ознакомьтесь с набором рабочих окон редактора VBA и с текстом созданной программы, для чего с помощью команд Сервис„Макрос„Макросы вызовите макрос МакросПроверка и нажмите кнопку Изменить. Аналогичный результат можно получить, выполняя последовательность команд Сервис„Макрос„Редактор Visual Basic.

6. Ознакомьтесь с текстом созданного модуля МакросПроверка. Пример полученного текста представлен ниже.

Sub МакросПроверка()

'

' МакросПроверка Макрос

' Макрос записан 03.11.2003 (NNNN)

'

' Сочетание клавиш: Ctrl+z

'

Range("A1").Select

ActiveCell.FormulaR1C1 = "Проверка"

Range("A2").Select

ActiveCell.FormulaR1C1 = "26"

Range("B2").Select

ActiveCell.FormulaR1C1 = "15"

Range("C2").Select

ActiveCell.FormulaR1C1 = "=RC[-2]*RC[-1]"

Range("C3").Select

End Sub

 

7. Первая строка представляет собой заголовок созданной процедуры МакросПроверка.

Параметры процедуры отсутствуют. Символом обозначен комментарий. Первая рабочая строка программы вызывает объект Аррliсаtiоп (приложение) с методом Run (выполнить), вызывающим на выполнение объект Range (диапазон) с параметрами начальной установки рабочего листа. Далее производится выделение ячейки А1 текущего рабочего листа и запись в активную ячейку в формате R1C1 текста “Проверка”.

Отметим, что в Ехсеl существует два формата (А1 и R1СI) и два способа адресации (относительная и абсолютная) ячеек памяти. В формате А1 признаком абсолютной адресации является символ “$“. В формате RIСI абсолютный адрес задается индекс рабочей строки и столбца, а при необходимости использования относительной адресации в квадратных скобках указывается относительное смещение со знаком по отношению к текущей рабочей ячейке. Последующие действия программы соответствуют выполненной последовательности при программировании макроса. Как следует из текста, константы и формулы заносятся с использованием метода FormulaR1С1 объекта ActiveCell.

9. Модифицируйте созданную программу. Введите в ее текст описание трех дополнительных переменных:

Dim b, c As Integer

Предварительно описав переменную d1 как строку символов, введите в текст программы оператор ввода данных:

Dim d As String

D = InputBox (“Первый сомножитель”, ”Проверка”)

Преобразуйте значение d из символьного вида к числовому с помощью функции:

b = Val(d)

и убедитесь, что содержимое ячейки может быть задано с клавиатуры в диалоговом режиме.

Ниже представлен пример созданной в процессе модернизации макроса программы на языке VВА:

Sub МакросПроверка ()

'

' МакросПроверка Макрос

' Макрос записан 03.11.2003 (APTS)

Dim b, c As Integer

Dim d As String

MsgBox "Умножение", vbOKOnly, “Проверка”

d = InputBox("Первый сомножитель", "Проверка")

b = Val(d)

d = InputBox("Второй сомножитель", "Проверка")

c = Val(d)

Range("A1").Select

ActiveCell.FormulaR1C1 = "Проверка"

Range("A2").Select

ActiveCell.FormulaR1C1 = b

Range("B2").Select

ActiveCell.FormulaR1C1 = c

Range("C2").Select

ActiveCell.FormulaR1C1 = "=RC[-2]*RC[-1]"

End Sub

 


Задание 2



Поделиться:


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

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