Основы офисного программирования и язык VBA


Macrorecorder - часть 2


С этими разными событиями может связываться одна и та же процедура обработки. Поэтому созданная Macrorecorder программа в таких случаях будет одинаковой, не зависящей от того, как пользователь добился нужного ему эффекта.

На сегодня Macrorecorder не очень "интеллектуален" - он слепо копирует действия пользователя и не занимается оптимизацией созданной им программы. Так, если пользователь записал в ячейку А1 число 15, в А2 - 17, а потом передумал и решил вернуться к ячейке А1 и заменить 15 на 21, то Macrorecorder в программе повторит все его действия. "Любимый" объект Macrorecorder - Selection, и это понятно: всякий раз, когда пользователь выбирает новый объект, Macrorecorder создает новый объект Selection. Сегодня типична ситуация, когда программист использует макрос, созданный Macrorecorder, как заготовку, оптимизируя код вручную. Думается, интеллект Macrorecorder повысится в следующих версиях. Но и сейчас это крайне полезное средство. Office 2000 позволяет чрезвычайно просто решить вручную массу задач (в этом вся его суть). Вместе с тем необходимость в решении таких задач может возникать неоднократно, и потому полезно иметь соответствующую программу. Так что технология такова: один раз задача решается вручную, Macrorecorder создает макрос, транслируя наши действия, затем макрос, если надо, оптимизируется и запускается всякий раз, когда возникает необходимость решения данной задачи.

Завершим описание примером. Наиболее удобен для демонстрации Excel, - именно здесь вручную можно решать очень необычные задачи. Поэтому и Macrorecorder интенсивнее всего используется в Excel. Хотя, привыкнув, Вы будете применять его и в других приложениях Office 2000. Рассмотрим написание в Excel программы, создающей последовательность первых N чисел Фибоначчи, - типичная задача для студентов первого курса, изучающих программирование. В ней есть рекуррентные соотношения, цикл, она требует понимания понятия "переменная". Рекуррентные соотношения для получения чисел Фибоначчи таковы:




Начало  Назад  Вперед



Книжный магазин