
- •Vba в приложении к Word
- •Практическая работа № 1 “Работа в Wоrd”
- •Практическая работа № 2 “Количество абзацев в документе”
- •Текст программы
- •Практическая работа № 3 “Количество букв “а” (русских) в абзаце”
- •Текст программы
- •Практическая работа № 4 “Предложения в абзаце”
- •Текст программы
- •Практическая работа № 5 “Слова-палиндромы”
- •Текст программы
Текст программы
Public Sub CommandButton1_Click()
Dim k As Integer
Dim Text As String
Dim ZAGOLOVOK As Range
Dim REZULTAT As Range
k = ActiveDocument.Paragraphs.Count
Text = "Количество абзацев в этом документе - " & k & "."
ActiveDocument.Paragraphs(k).Range.InsertParagraphAfter
ActiveDocument.Paragraphs(k + 1).Range.InsertBefore Text
Set REZULTAT = ActiveDocument.Paragraphs(k + 1).Range
With REZULTAT .Font.Name = "Arial" .Font.Size = 14
.Font.ColorIndex = wdDarkRed End With
Set ZAGOLOVOK = ActiveDocument.Range(Start:=0, End:=0)
With ZAGOLOVOK
.InsertBefore "Протоколы"
.Font.Name = "Arial"
.Font.Size = 24
.InsertParagraphAfter
.Font.Name = "Arial"
.Font.Size = 24
.InsertParagraphAfter
End With
End Sub
Строка программы |
Пункт алгоритма |
Public Sub CommandButton1_Click() |
Начало |
Dim k As Integer |
1a |
Dim Text As String |
1b |
Dim ZAGOLOVOK As Range |
1c |
Dim REZULTAT As Range |
Эта часть для выполнения дополнительного задания |
k = ActiveDocument.Paragraphs.Count |
2 |
Text = "Количество абзацев в этом документе - " & k & "." |
3 |
ActiveDocument.Paragraphs(k).Range.InsertParagraphAfter |
4 |
ActiveDocument.Paragraphs(k + 1).Range.InsertBefore Text |
5 |
Set REZULTAT = ActiveDocument.Paragraphs(k + 1).Range With REZULTAT .Font.Name = "Arial" .Font.Size = 14 .Font.ColorIndex = wdDarkRed End With |
Эта часть для выполнения дополнительного задания |
Set ZAGOLOVOK = ActiveDocument.Range(Start:=0, End:=0) |
6 |
With ZAGOLOVOK |
Начало структуры With |
.InsertBefore "Протоколы" |
7 |
.Font.Name = "Arial" |
8 |
.Font.Size = 24 |
8 |
.InsertParagraphAfter |
9 |
End With |
Конец структуры With |
End Sub |
Конец |
Практическая работа № 3 “Количество букв “а” (русских) в абзаце”
Эта практическая работа выполняется с тем же документом, что и работа № 9–2 (с документом, который состоит из нескольких абзацев). Задача заключается в том, чтобы программно определить номер абзаца, в котором будет происходить подсчет букв а; подсчитать их количество; в конце документа (или после абзаца, в котором происходил подсчет) вывести сообщение о количестве букв.
Порядок работы.
1. Вызвать панель элементов управления “Вид | Панели инструментов | Элементы управления”.
2. Подготовить кнопку на рабочем листе ниже текста “CommandButton2”.
3. Переименовать кнопку в “Количество букв а в абзаце”.
4. Придать кнопке формат обтекания по контуру, чтобы ее можно было перемещать по листу.
5. Выбрать в контекстно-зависимом меню этого объекта пункт “Исходный текст” или два раза щелкнуть по кнопке (мы попадем в редактор в режим написания программы).
Алгоритм выполнения задания следующий:
1. Объявить переменные:
a) b — строковая переменная для размещения в ней выбранного абзаца в документе;
b) k — переменная для хранения количества абзацев в документе;
c) dl — переменная для хранения длины абзаца;
d) Text — переменная для формирования текста-ответа о количестве символов а в абзаце;
e) Nab — переменная для ввода номера абзаца, в котором будет происходить подсчет;
f) I — переменная для организации цикла;
g) kol — переменная для подсчета символов а;
h) REZULTAT — переменная, которая определит область для вывода заголовка.
2. Ввести номер абзаца, используя диалоговое окно.
3. Определить количество абзацев в документе.
4. Проверить существование введенного номера абзаца и выдать сообщение об ошибке, если такого нет.
5. В переменную b занести текст всего абзаца.
6. Определить длину абзаца.
7. Организовать цикл по нахождению символа а.
8. Сформировать текст вывода сообщения.
9. Вставить дополнительный абзац после последнего абзаца документа для вывода сообщения.
10. Вывести текст-сообщение в подготовленный абзац.
11. Установить определенный шрифт, размер и цвет текста-сообщения.