Задание Записать в Microsoft Word макрос, который автоматически вводит в позицию курсора слово "Привет". Отредактировать макрос вручную таким образом, чтобы он выводил "До свидания"




Скачать 92.78 Kb.
НазваниеЗадание Записать в Microsoft Word макрос, который автоматически вводит в позицию курсора слово "Привет". Отредактировать макрос вручную таким образом, чтобы он выводил "До свидания"
Дата публикации30.06.2013
Размер92.78 Kb.
ТипДокументы
litcey.ru > Информатика > Документы

2.1. Редактор Visual Basic


02-01-Ввод текста.docm - пример к п.2.1.

2.1.1. Задание


Записать в Microsoft Word макрос, который автоматически вводит в позицию курсора слово "Привет". Отредактировать макрос вручную таким образом, чтобы он выводил "До свидания".

2.1.2. Решение


Начнем запись макроса (Назовем его "Privet"), введем с клавиатуры слово "Привет", после чего остановим запись.

Откроем окно Макросы нажатием соответствующей кнопки на панели Вид, выберем наш макрос и нажмем на кнопку Изменить. Перед нами откроется окно редактора Visual Basic с открытым в нем макросом (рис. 2.1.)




увеличить изображение
Рис. 2.1.  Окно редактора Visual Basic

Окно редактора включает в себя несколько рабочих областей - окон, служащих для выполнения различных действий. На рис. 2.1. в окне редактора присутствуют три рабочих области:

Code (Код) - это окно, в котором пишут тексты VBA-программ и редактируют макросы. Эта область расположена справа и занимает большую часть окна редактора.

^ Project Explorer (Проводник Проекта) - это окно обычно открыто в левой верхней части окна редактора. Оно отображает информацию о компонентах проекта, позволяет быстро перемещаться между компонентами.

^ Properties (Свойства) - отображает свойства выделенного объекта. Обычно располагается в левой нижней части рабочего окна.

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

^ UserForm (Форма) - служит для редактирования пользовательской формы в визуальном режиме.

Toolbox (Панель элементов управления) - содержит набор элементов управления (например - это кнопки, поля ввода и т.д.), которые можно добавлять на формы или в документы.

^ Object Browser (Обозреватель объектов) - служит для просмотра информации об объектах, доступных в данном приложении.

Watch, Locals, Immediate - окна, средства которых используются при отладке приложений.

Давайте изучим содержимое окна Code. Посмотрите на первую и последнюю строчку текста. Первая строчка выглядит так:

Sub Privet ()

Это - начало процедуры макроса. Процедура - это самостоятельный участок кода. Если хотите, можете считать процедуру отдельной программой. Думаю, вам знакомо название процедуры макроса - ведь мы сами дали ему это имя при записи.

Последняя строчка нашего макроса выглядит так:

End Sub

Получается, что все наши действия в ходе записи макроса описаны командами, находящимися между Sub и End Sub. А что же там находится?

Сразу после первой строки макроса можно увидеть несколько строчек, начинающихся со значка ' (апостроф). Он указывает на то, что текст данной строки - это комментарий. Комментарии в текстах VBA-программ автоматически выделяются зеленым цветом. В нашем случае комментарии содержат информацию об имени макроса и тот текст, который мы вводили в качестве комментария к макросу.

Дальше начинается самое интересное - код, который автоматизирует ввод текста. В нашем случае полезная часть макроса состоит всего из одной строчки. Вот она:

Selection.TypeText Text:="Привет"

Давайте попытаемся "перевести" текст этой программной строки на русский язык, учитывая, что Selection переводится как "выделение", Type - "печатать", Text - текст. Получается, что этой строкой мы даем компьютеру такую команду: "Напечатать в выделенной позиции текст "Привет"".

Как вы думаете, что нужно сделать с этой строчкой, чтобы программа вместо "Привет" вывела бы "До свидания"? Наверняка вы уже догадались, что для этого нужно лишь заменить текст, который расположен в кавычках.

В результате у нас получилась такая строка:

Selection.TypeText Text:="До свидания"

Многие начинающие программисты не придают значения точкам, запятым, скобкам и кавычкам, которые попадаются им в программе. Обычно это приводит к массе ошибок, которые вызывают у новичка недоумение. Поэтому будьте предельно внимательны, редактируя тексты программ.

Отредактируйте текст программы, закройте окно редактора (или, не закрывая его, перейдите в окно документа), и, установив курсор в желаемое место вставки текста, выполните макрос.

Примите мои поздравления. Первое знакомство с редактором Visual Basic и с языком VBA состоялось. Ваш первый вручную отредактированный макрос работает. Но сейчас у вас гораздо больше вопросов, чем ответов.
^

2.2. Использование вкладки Разработчик


В приложениях Microsoft Office предусмотрена специальная вкладка - Разработчик. Она служит для работы с VBA-программами, элементами управления, которые можно добавлять в документ и т.д. По умолчанию эта вкладка скрыта. Чтобы отобразить ее, например, в Microsoft Word, нажмите кнопку Microsoft Office (в левом верхнем углу окна программы), в появившемся окне нажмите на кнопку Параметры Word, после чего в окне Параметры Word установите галочку в поле Показывать вкладку Разработчик на ленте. Вот как выглядит эта вкладка (рис. 2.2.).




увеличить изображение
Рис. 2.2.  Вкладка Разработчик на ленте Microsoft Word

Обратите внимание на кнопку Visual Basic - она расположена в области Код. Нажав на эту кнопку, вы запустите редактор VBA. В области Элементы управления расположены миниатюры элементов управления, которые можно располагать в документах.

Если вы включите отображение вкладки Разработчик - в строке состояния редактора появится кнопка, с помощью которой можно быстро начать или остановить запись макроса.

В дальнейшем мы постоянно будем пользоваться элементом управления Кнопка для демонстрации различных возможностей VBA.
^

2.3. Объектно-ориентированное программирование


В последние годы огромную популярность приобрело так называемое объектно-ориентированное программирование ( ООП ). Для того, чтобы эффективно работать в VBA, нужно понимать основные положения ООП. В частности, вам нужно разобраться, что такое классы, объекты, что такое методы, свойства и события объектов.

Класс - это шаблон для создания объектов. Например, пусть у нас есть класс "автомобиль". Он создан по общему чертежу, по единой проектной документации. Но каждый отдельный объект - конкретный экземпляр автомобиля -индивидуален. Например, они различаются цветом, особенностями отделки салона и так далее. Точно также происходит и при работе с программными классами и объектами. Один класс может породить множество различных объектов.

На первых этапах VBA-программирования вам не придется самостоятельно создавать классы, но вы постоянно будете обращаться к объектам из своих процедур. Однако знайте, что VBA в MS Office 2007 поддерживает написание полностью объектно-ориентированных приложений классов и инструментария работы с ними.

Объект - это нечто целостное, неделимое, содержащее в себе данные и код. В объекте может храниться информация и программные инструкции для обработки этой информации.

У объектов есть свойства и методы. Объекты могут откликаться на события. Чтобы объяснить эти важнейшие понятия, разовьем уже использованный пример.

Напомним: наш объект - это автомобиль. Какие свойства есть у автомобиля? Цвет, тип двигателя, скорость движения и так далее. А какие методы? Что наш автомобиль умеет делать? Например, передвигаться, ехать. Получается, что у автомобиля есть как минимум два метода: "начать движение" и "остановиться". Точно так же, свойства и методы есть и у объектов, которыми мы будем пользоваться в VBA. А как насчет событий? Например, событием по отношению к автомобилю может быть нажатие педали газа, которое приводит к увеличению скорости.

Детали работы объекта скрыты от пользователя. Обычно пользователю доступны лишь те свойства и методы, которые специально для этого предназначены. Пользователь не может повлиять на внутренние механизмы объекта, работая лишь со специально выделенными для взаимодействия с внешним миром методами и свойствами.

Обращение к методам объектов в VBA ведется таким образом:

Объект.Метод

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

Объект.Метод (Параметры)

Обратите внимание на то, что объект и метод отделены точкой. Если вы вводите в редакторе VBA имя объекта и ставите после него точку - редактор подскажет вам, какие методы и свойства есть у этого объекта.

С помощью методов объекта мы даем объекту команды. Например, такая команда: Application.Quit, приводит к закрытию приложения. Очевидно, что Application - это объект "Приложение", а Quit - это метод "Выйти".

Со свойствами обычно работают так:

Объект.Свойство=Значение

Такой командой мы присваиваем некое значение свойству объекта.

А так: Переменная=Объект.Свойство можно присвоить некоей переменной свойство объекта. Подробнее с переменными мы познакомимся ниже. Пока можете считать переменные специальными "ящиками" в памяти компьютера, в которых можно хранить различные данные.

Свойства - это, как мы уже говорили, признаки объектов. Например, такая команда, txt_User_Name.Text="Александр", выведет в текстовом поле ( объект txt_User_Name ) слово "Александр". Очевидно, что эта команда модифицирует свойство объекта Text, которое отвечает за выводимый на объекте текст.

Если вам пока непонятно, что это за текстовые поля и их свойства - просто читайте дальше. В следующей главе мы подробно все это обсудим - и вы сможете соединить теорию, которую вы уже знаете, с практикой.

Событие - это действие, которое объект распознает и на которое реагирует. Например, событием может быть щелчок мышью по кнопке, открытие нового документа и т.д.

Объекты могут объединяться в коллекции объектов. Фактически, коллекции - это объекты, которые содержат в себе другие объекты. Обычно в коллекцию входят объекты, имеющие один и тот же тип - то есть - одинаковые объекты.

В следующей главе мы вплотную займемся работой с объектами, а пока обсудим очень важную тему - объектные модели приложений Office.
^

2.4. Введение в объектные модели приложений Office


Объекты приложений Office объединены в иерархическую структуру, которую называют объектной моделью. У каждого приложения своя объектная модель, то есть свой набор объектов. Например, в Microsoft Word на верхнем уровне иерархии стоит библиотека классов Word. Она включает в себя множество классов, например - Application, который символизирует приложение Microsoft Word. Application, в свою очередь, включает в себя другие объекты, методы, свойства. Например, такая команда приводит к закрытию Microsoft Word:

Word.Application.Quit

Обычно при работе в MS Word опускают вызов объекта Word, то есть вышеприведенную команду вполне может заменить такая:

Application.Quit

Вызов объекта Application тоже можно опускать, но делать это допустимо не всегда. Например, команду Application.Quit сократить уже не получится

Как мы уже говорили, в редакторе VBA есть средство для просмотра информации об объектах - Object Browser. Для его вызова служит одноименная кнопка на панели инструментов, или клавиша F2 (рис. 2.3.).




Рис. 2.3.  Окно Object Browser

В левой части окна (она называется Classes ) находится список классов и перечислений, входящих в библиотеку Word (или в ту библиотеку, которая выбрана в поле Object Browser ), в окне Members of можно просмотреть методы, свойства и события выбранного в предыдущем окне класса.

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

Здесь нет информации о том, что делает тот или иной метод, что означает то или иное свойство и т.д. Как же узнать подробности? Для начала - задуматься над именами классов, объектов, свойств, методов, событий. Правда, для их понимания нужно знать значения английских слов, которые использованы для их именования.

Далее, можно поискать информацию по интересующим вас объектам в справочной системе VBA, а так же - в базах данных Microsoft (www.microsoft.com).

Если вы не знаете, какой именно объект нужен для выполнения того или иного действия, но знаете как выполнить это действие с помощью визуальных средств приложения (например - с помощью кнопок на вкладках), вы можете исследовать объектные модели с помощью макрорекордера.

Объектные модели приложений огромны. С одной стороны, для эффективного использования всех объектов, нужно хорошо в них разбираться, с другой же - запомнить все это многообразие очень сложно. К счастью, для повседневной работы вам достаточно знать лишь основные классы и объекты объектных моделей, а если вам понадобится что-нибудь особенное - всегда можно воспользоваться справкой или использовать макрорекордер.

Помимо обычных объектных моделей приложений Office, вы можете использовать в своих программах другие объектные модели. Например, программируя для Word, можете воспользоваться объектной моделью Excel а так же - любыми другими моделями, установленными в системе. Для этого нужно подключить нужные модели из редактора VBA с помощью команды меню Tools -> References (Инструменты o Ссылки) (рис. 2.4.).

В данном случае мы подключаем библиотеку Microsoft Excel (она ценна встроенными функциями) к Microsoft Word, то есть сможем пользоваться некоторыми функциями Excel в Word. Подключенные модели можно просматривать в окне Project Explorer.




Рис. 2.4.  Подключение библиотеки объектов Microsoft Excel

Подключив объектную модель Microsoft Excel в Microsoft Word, вы сможете программно работать с документами MS Excel из программ, написанных в MS Word (и наоборот). Если вы собираетесь работать с базами данных - вам понадобится особая объектная модель ADO и т.д.
^

2.5. Старые и новые версии Office: совместная работа


Сегодня нередко встречается ситуация, когда пользователям приходится одновременно работать со старыми версиями MS Office (например, Office XP, 2003) и новыми (Office 2007). Как вы знаете, эти версии имеют различные форматы файлов. Например, в предыдущих версиях MS Word используется универсальный формат .doc для хранения файлов документов, .dot - для шаблонов, а в новой - .docx и .docm для документов (второй формат поддерживает макросы, а первый - нет), и . dotm - для шаблонов.

Новый Office нормально работает со старыми версиями файлов, в том числе и с файлами, содержащими макросы. Однако, если вы хотите, чтобы, скажем, ваши *.doc - файлы, содержащие макросы, гарантированно работали в Office 2007 - обязательно тестируйте их в среде Office 2007.

Старые версии в исходном виде не умеют работать с новыми файлами. Чтобы они смогли читать новые файлы, нужно установить специальный конвертер, который можно скачать с сайта Microsoft, однако это не гарантирует полную совместимость программного кода. Так, объектные модели приложений Office 2007 дополнены новыми объектами (например, OMath для работы с формулами в MS Word).

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

Большая часть материала данной книги справедлива для всех современных версий Office, однако, как уже было сказано, объектные модели приложений различаются, поэтому, используя тот или иной объект в устаревших версиях - обязательно сверяйтесь со справочной системой или исследуйте операции с помощью макрорекордера.

2.6. Выводы


В этой лекции вы узнали самое главное о программировании на VBA. Теперь вы знаете, как найти редактор Visual Basic и где хранится код макроса. Теперь вам нужно научиться пользоваться редактором, ориентироваться в его инструментах. Всему этому посвящена следующая лекция.

Похожие:

Задание Записать в Microsoft Word макрос, который автоматически вводит в позицию курсора слово \"Привет\". Отредактировать макрос вручную таким образом, чтобы он выводил \"До свидания\" iconПрограмма (или просто макрос), макрос функция (или функция определённая пользователем
Отличаются они тем, что макрос-программа может выполнять любые предусмотренные vba действия, макрос-функция может только возвращать...
Задание Записать в Microsoft Word макрос, который автоматически вводит в позицию курсора слово \"Привет\". Отредактировать макрос вручную таким образом, чтобы он выводил \"До свидания\" iconМакрос сохранения листа Excel в файл
Для использования этого макроса на любом листе в книге Excel создайте кнопку, и назначьте ей макрос СохранитьЛистВФайл
Задание Записать в Microsoft Word макрос, который автоматически вводит в позицию курсора слово \"Привет\". Отредактировать макрос вручную таким образом, чтобы он выводил \"До свидания\" iconЧто осваивается и изучается?
Запустите программу Microsoft Word, пользуясь меню Пуск/Программы/Microsoft Word. На экране появится окно программы Word. Изучите...
Задание Записать в Microsoft Word макрос, который автоматически вводит в позицию курсора слово \"Привет\". Отредактировать макрос вручную таким образом, чтобы он выводил \"До свидания\" iconУчебной дисциплинеРис пс и итдля студентов специальности «Прикладная информатика (в экономике)»
Процесс создания макросов в ms excel очень похож на создание макросов в ms word. Но есть здесь и свои тонкости. Мы создадим макрос,...
Задание Записать в Microsoft Word макрос, который автоматически вводит в позицию курсора слово \"Привет\". Отредактировать макрос вручную таким образом, чтобы он выводил \"До свидания\" iconЛабораторная работа №4. Внедрение объектов
Диаграммы в Microsoft Word создаются на основе таблиц и вставляются в документ Microsoft Word с помощью меню Вставка→Объект→Диаграмма...
Задание Записать в Microsoft Word макрос, который автоматически вводит в позицию курсора слово \"Привет\". Отредактировать макрос вручную таким образом, чтобы он выводил \"До свидания\" iconЛабораторная работа №1. Microsoft Word. Задание №1 Документ "Приглашение"
Задание №1 Базы данных. Реляционные базы данных. Интерфейс Microsoft Access. Создание Базы данных. 53
Задание Записать в Microsoft Word макрос, который автоматически вводит в позицию курсора слово \"Привет\". Отредактировать макрос вручную таким образом, чтобы он выводил \"До свидания\" iconЛабораторная работа №1. Первичные настройки текстового процессора Microsoft Word 2000
Текстовый редактор Microsoft Word 2000 предоставляет широкие возможности для работы с текстовыми документами
Задание Записать в Microsoft Word макрос, который автоматически вводит в позицию курсора слово \"Привет\". Отредактировать макрос вручную таким образом, чтобы он выводил \"До свидания\" iconЛабораторная работа № Настройка текстового процессора Microsoft Word. 2
Лабораторная работа № Редактирование документа в текстовом процессоре Microsoft Word. 4
Задание Записать в Microsoft Word макрос, который автоматически вводит в позицию курсора слово \"Привет\". Отредактировать макрос вручную таким образом, чтобы он выводил \"До свидания\" iconИногда людей преследуют повторяющиеся сны. Ничего в этом особенного...
Как правило, таким образом, подсознание пытается привлечь внимание человека к чему-то важному, передать своего рода послание. Для...
Задание Записать в Microsoft Word макрос, который автоматически вводит в позицию курсора слово \"Привет\". Отредактировать макрос вручную таким образом, чтобы он выводил \"До свидания\" iconЗаполнение пустых ячеек случайными числами
Макрос перебирает в цикле все ячейки выделенного диапазона, и в пустые ячейки вставляет случайные числа от 1 до 12
Вы можете разместить ссылку на наш сайт:
Школьные материалы


При копировании материала укажите ссылку © 2013
контакты
litcey.ru
Главная страница