КАТЕГОРИИ: Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748) |
Текст программы
Private Sub CommandButton2_Click() Начало программы Dim b As String Dim k As Integer Dim dl As Long Dim Text As String Dim Nab As Integer Dim i As Long Dim REZULTAT As Range kol = 0 Nab = InputBox("Введите номер абзаца", "Подсчитаем буквы а") k = ActiveDocument.Paragraphs.Count If Nab > k Then MsgBox "В тексте нет такого абзаца", 48, "Предупреждение" End End If b = ActiveDocument.Paragraphs(Nab).Range dl = Len(b) For i = 1 To dl If Mid(b, i, 1) = "а" Or Mid(b, i, 1) = "А" Then kol = kol + 1 Next i MsgBox kol Text = "Количество букв а в абзаце с номером "& Nab & " - " & kol & "." ActiveDocument.Paragraphs(k).Range.InsertParagraphAfter Set REZULTAT = ActiveDocument.Paragraphs(k + 1).Range With REZULTAT .InsertBefore Text .Font.Name = "Arial" .Font.Size = 14 .Font.ColorIndex = wdDarkRed End With End Sub
Результат выполнения представлен на рисунке.
Практическая работа № 4 “Предложения в абзаце” Эта практическая работа выполняется с тем же документом, что и работа № 9–2 и 9–3 (или с любым текстом, который состоит из нескольких абзацев). Задача заключается в том, чтобы программно определить номер абзаца, в котором наибольшее количество предложений; выделить сообщение о номере абзаца и о количестве предложений, используя диалоговое окно; выделить этот абзац другим цветом. Порядок работы. 1. Вызвать панель элементов управления “Вид | Панели инструментов | Элементы управления”. 2. Подготовить кнопку “CommandButton3” на рабочем листе ниже текста. 3. Переименовать кнопку в “Предложения в абзаце”. 4. Придать ей формат обтекания по контуру, чтобы кнопку можно было перемещать по листу. 5. Выбрать в контекстно-зависимом меню этого объекта пункт “Исходныйтекст” или два раза щелкнуть по кнопке (попадаем в редактор в режим написания программы). Алгоритм выполнения задания следующий: 1. Объявить переменные: a) k — переменная для хранения количества абзацев в документе; b) kol — переменная для хранения количества предложений в абзаце; c) i — переменная для организации цикла; d) Mas() — массив для занесения количества предложений в абзацах; e) Otvet — переменная для формирования текста-ответа с результатами; f) Max — переменная для хранения максимального количества предложений в абзаце; g) ind — переменная для хранения номера абзаца с максимальным количеством предложений; h) REZULTAT — переменная, которая определит область абзаца, к которому надо применить элементы форматирования. При объявлении массива нам неизвестно количество абзацев в документе. Поэтому объявление массива производим в два этапа: 1-й этап — объявление без размера Dim Mas() As Integer; 2-й этап — после определения количества абзацев в документе переопределяем размерность массива ReDim Mas(k) As Integer. Такие массивы называются динамическими. Кроме этого, чтобы индекс массива начинался с 1, а не с 0 (для удобства работы), в редакторе в начале листа с процедурой укажите команду “Option Base 1”. 2. Определить количество абзацев в документе. 3. Переопределить размерность массива. 4. Организовать цикл по определению количества предложений в абзацах с занесением их размерности в массив и сохранением порядкового номера в массиве, что соответствует номеру абзаца. 5. Организовать цикл по нахождению наибольшего количества предложений в абзаце (работа со сформированным массивом) по стандартному алгоритму. 6. Сформировать текст вывода сообщения. 7. Вывести в диалоговом окне сообщений результат. 8. Определить область абзаца для форматирования. 9. Установить определенный шрифт, размер и цвет текста-абзаца с максимальным количеством предложений.
Дата добавления: 2017-02-01; Просмотров: 84; Нарушение авторских прав?; Мы поможем в написании вашей работы! Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет |