Вопрос 1 Написать макрос, изменяющий начертание первого слова в каждом абзаце на курсивное.
sub Cursiv()
dim i as integer
for i=1 to ActiveDocument._Paragraphs.count
ActiveDocument.Paragraphs(i)._range.words(1).italic=true
next i
end sub
sub Cursiv()
dim i as integer
for i=1 to ActiveDocument._Paragraphs.count
ActiveDocument.Paragraphs(i)._range.words(1).italic=true
next i
end sub
Основой объектной модели Excel является объект Worksheet, представляющий один рабочий лист в файле. Каждый объект Worksheet является частью коллекции Worksheets, которая принадлежит объекту Workbook, представляющему файл рабочей книги Excel. Так как в приложении Excel одновременно может быть открыто несколько рабочих книг, существует также и коллекция Workbooks, содержащая по одному объекту Workbook на каждый открытый файл. Как и во всех приложениях пакета Office, объект Application находится в вершине иерархии объектов и доступен в качестве неявной ссылки при работе в Excel.
Существует еще один тип листов в рабочих книгах Excel — лист диаграммы (объект Chart) — особая таблица, которая содержит только диаграмму. Коллекция Charts объекта Application реализует доступ ко всем диаграммам всех открытых файлов, а коллекция charts объекта Workbook — только к диаграммам данной рабочей книги. Диаграммы также могут быть внедрены в рабочие листы вместо того, чтобы иметь собственный лист. Такие диаграммы не являются частью коллекции charts, а вместо этого доступны в составе коллекции Chartob-jects объекта Worksheet. Коллекция Sheets осуществляет доступ ко всем рабочим листам, как к таблицам, так и к диаграммам.
Большая часть того, что вы делаете в Excel, связана с объектом Range. Хотя имя этого объекта не отличается от своего двойника в приложении Word, их составы различны. Однако его функции практически те же: обрамление части документа, с которым производится работа. Диапазоном может выступать отдельная ячейка, двумерный блок ячеек на рабочем листе или трехмерный блок ячеек, охватывающий несколько рабочих листов.
Еще одной важной составной частью объектной модели Excel является объект Chart. Существует один объект chart, содержащийся в коллекции charts для каждой диаграммы в рабочей книге. Каждому объекту Chart подчинено множество объектов, представляющих составные части диаграммы, такие как оси и легенда.
Приложение Word предназначено для создания документов, которые затем могут быть распечатаны или помещены на странице в Интернет. В приложении все вращается вокруг концепции документа, которым может быть все, что угодно — от 2-строчной записки, до 500-страничного многотомного отчета. Основными функциями приложения Word является ввод и редактирование текста, форматирование внешнего вида текста и его размещения на странице, помещение текста в колонки и таблицы. Также поддерживаются особые элементы, такие как верхние и нижние колонтитулы, номера страниц, индексы, и таблицы. Word также имеет встроенный словарь для проверки правописания и орфографии и тезаурус для нахождения синонимов. Если ваше приложение должно работать с текстом, вам следует, прежде всего, посмотреть на среду приложения Word.
Истории в документе
Каждый документ Word состоит из некоторого количества историй, которые представляют разные части документа: основной текст, первую страницу, заголовок, примечания и т.д. Каждая история представлена объектом Range, содержащим ее. Доступ к историям можно получить посредством коллекции sto-ryRanges, которая принадлежит объекту Document. В отличие от других коллекций, StoryRanges не имеет метода Add. Истории создаются автоматически и помещаются в коллекцию, когда в них появляется некоторое содержание. Однако главная текстовая история существует независимо от того, содержит она текст или нет. Для ссылок на разные истории служат следующие константы.
WdCommentsStory (комментарии);
WdEndNotesStory (примечания);
WdEvenPagesFooterStory (нижний колонтитул нечетных страниц);
WdEvenPagesHeaderStory (верхний колонтитул нечетных страниц);
WdFirstPageFooterStory (нижний колонтитул первой страницы); WdFirstPageHeaderStory (верхний колонтитул первой страницы); WdFootNotesStory (сноски); wdMainTextstory (основной текст);
WdPrimaryFooterStory (основные нижние колонтитулы); WdPrimaryHeaderStory (основные верхние колонтитулы); WdTextFrameStory (рамки).
Ссылку на конкретную историю можно получить следующим образом:
Dim StoryRange as Word.Range
Set StoryRange=MyDoc.StoryRanges (StoryType)
Здесь StoryType — одна из вышеперечисленных констант. Но если заданная история не присутствует в документе, возникает ошибка. Эту ошибку можно перехватить но все же во избежание этой потенциальной проблемы следует пройти в цикле по коллекции StoryRanges, чтобы проверить, существует ли данная история:
Dim StoryRange as Word.Range
Dim R As Word.Range
Dim StoryExists As Boolean
StoryExists=False
For Each R In MyDoc.StoryRanges
If R.StoryType=wdPrimaryHeaderStory Then Set StoryRange=R StoryExists=True
End If Next R If Not StoryExists Then
MsgBox (”The Primary Header Story does not exists.”) End If
А вот фрагмент программы, который добавляет текст “Compiled by R.Smith” в конец существующего текста в основных нижних колонтитулах:
Dim R As Word.Range
Dim S As String
For Each R In ActiveDocument.StoryRanges
If R.StoryType=wdPrimaryFooterStory Then
S=R.Text End If Next R
ActiveDocument.Selections (1).Footers _ (WdPrimaryFooterStory). _ Range.Text=S & “Compiled by R.Smith”
© Проект «Студенты-Программеры»., 2008. Все права защищены.
Перепечатка материалов только при наличии активной ссылки на источник.
Powered by WordPress