Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
_Presentation_2s-3.doc
Скачиваний:
56
Добавлен:
24.03.2015
Размер:
784.38 Кб
Скачать

12.2.4. Форматирование текста в документах

Private Sub RangeFormat()

'Установка диапазона на первый абзац

Dim rng As Word.Range = Me.Paragraphs(1).Range

'или

'Dim document As Word.Document = Me.Application.ActiveDocument

'Dim rng As Word.Range = document.Paragraphs(1).Range

'Форматирование диапазона

rng.Font.Name = "Arial" 'Шрифт

rng.Font.Size = 14 'Размер шрифта

rng.ParagraphFormat.Alignment = _

Word.WdParagraphAlignment.wdAlignParagraphCenter

rng.Select()

MessageBox.Show("Форматированный диапазон")

'Отмена трех предыдущих действий

Me.Undo(Times:=3) 'или document.Undo(Times:=3)

rng.Select()

MessageBox.Show("Отмена трех действий")

'Применение стиля Normal Indent

rng.Style = "Normal Indent"

rng.Select()

MessageBox.Show("Стиль Normal Indent применен")

'Отмена одного действия

Me.Undo() 'или document.Undo()

rng.Select()

MessageBox.Show("Отмена одного действия ")

End Sub

12.2.5. Поиск и замена текста в документах

1. Использование объектаSelection для поиска текста в документах.

Private Sub SelectionFind()

'Присваивание переменной строки поиска

Dim findText As String = "найдите меня"

'Снятие форматирования, установленного при выполнении

'предыдущего поиска

Application.Selection.Find.ClearFormatting()

'Поиск и отображение его результатов в окне сообщения

If Application.Selection.Find.Execute(findText) = True Then

MessageBox.Show("Текст найден.")

Else

MessageBox.Show("Текст не найден.")

End If

End Sub

2. Использование объекта Range для поиска текста в документах.

Private Sub RangeFind()

Dim findText As String = "найдите меня"

'или Dim findText As Object = "найдите меня"

'Определение объекта Range,

'состоящего из второго абзаца документа

Dim rng As Word.Range = Me.Paragraphs(2).Range

'или Dim rng As Word.Range = _

' Me.Application.ActiveDocument.Paragraphs(2).Range

'Очистка всех параметров форматирования

'(с помощью свойства FindобъектаRange)

rng.Find.ClearFormatting()

'Поиск строки "найдите меня" и отображение результатов

'в окне сообщения

If rng.Find.Execute(findText) Then

MessageBox.Show("Текст найден.")

Else

MessageBox.Show("Текст не найден.")

End If

'Выделение абзаца Range, чтобы сделать его видимым

rng.Select()

EndSub

3. Поиск и замена текста в документах.

Private Sub SearchReplace()

Dim FindObject As Word.Find = Application.Selection.Find

With FindObject

.ClearFormatting()

.Text = "найдите меня"

.Replacement.ClearFormatting()

.Replacement.Text = "Найден"

.Execute(Replace:=Word.WdReplace.wdReplaceAll)

End With

End Sub

4. Установка параметров поиска в документах.

– Установка параметров поиска с помощью объекта Find.

With Application.Selection.Find

.ClearFormatting()

.Forward = True

.Wrap = Word.WdFindWrap.wdFindContinue

.Text = "найдите меня"

.Execute()

End With

– Установка параметров поиска с помощью аргументов метода Execute.

With Application.Selection.Find

.ClearFormatting()

.Execute(FindText:="найдите меня", Forward:=True, _

Wrap:=Word.WdFindWrap.wdFindContinue)

End With

5. Просмотр найденных элементов в документе.

Private Sub FindLoop()

Dim intFound As Integer = 0

'Объявление объекта Range

Dim rng As Word.Range = Me.Content

'или Dim rng As Word.Range = _

' Me.Application.ActiveDocument.Content

'Использование свойства Found в цикле

'для поиска всех вхождений строки

rng.Find.ClearFormatting()

rng.Find.Forward = True

rng.Find.Text = "найдите меня"

rng.Find.Execute()

Do While rng.Find.Found = True

'Автоувеличение при каждом нахождении искомой строки

intFound += 1

rng.Find.Execute()

Loop

'Отображение количества появлений искомой строки

'в окне сообщения

MessageBox.Show("Strings found: " & intFound.ToString())

End Sub