|
Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Программирование и базы данных » VBA - Отладка программ |
|
VBA - Отладка программ
|
Новый участник Сообщения: 24 |
1.Определить количество абзацев в документе. Абзац, который содержит наибольшее число предложений, выделить красным курсивом. Вывести в конце документа сообщение:
а) о количестве абзацев; б) номера абзацев с наибольшим числом предложений. 2. Подсчитать в 4 абзаце (если такого нет, то выдать соответствующее сообщение) количество слов, начинающихся и заканчивающихся на одну и ту же букву. В конце документа вывести соответствующее сообщение. 3. Найти в документе самое длинное слово. Предложение с самым длинным словом скопировать в начало документа. |
|
Отправлено: 21:29, 14-03-2011 |
Пользователь Сообщения: 120
|
zena, вы хотите чтобы за Вас была решена задача или ждёте намека на решение, если первое то Вы ошиблись форумом (тут не фриланс), если второе то:
1. ThisDocument.Paragraphs.Count насчет наибольшее число предложений ThisDocument.Paragraphs(x).Range.Select ThisDocument.Selection.Sentences.Count выделить красным курсивом ThisDocument.Selection.Font.Italic = True ThisDocument.Selection.Font.Color = vbRed а) количество абзацев ThisDocument.Paragraphs.Count б) номера абзацев с наибольшим числом предложений - запоминать в массив при обходе во время поиска самого большого по предложениям абзаца 2. ThisDocument.Paragraphs(4).Range.Select ThisDocument.Selection.Sentences(x).Select ThisDocument.Selection.Words.Count и соответственно использовать mid(Selection.Words(y).Text,1,1) = mid(Selection.Words(y).Text,len(Selection.Words(y).Text)-1,1) 3. ThisDocument.Words.Count - обходим по нему и находим |
Отправлено: 14:53, 22-03-2011 | #2 |
Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети. Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля. |
Ветеран Сообщения: 27449
|
Профиль | Отправить PM | Цитировать KnRSU, «ThisDocument» работает именно с тем документом, в котором находится макрос, так что всё ж — «ActiveDocument».
|
Отправлено: 18:11, 22-03-2011 | #3 |
Новый участник Сообщения: 24
|
Профиль | Отправить PM | Цитировать Спасибо, я уже давно ничего не жду. Сама давно всё сделала:
Sub P1() 'Первый вопрос. Dim MaxКоличество As Long Dim MaxНомер As Long Dim i As Long With ActiveDocument MaxКоличество = .Paragraphs(1).Range.Sentences.Count MaxНомер = 1 For i = 1 To .Paragraphs.Count If .Paragraphs(i).Range.Sentences.Count > MaxКоличество Then MaxКоличество = .Paragraphs(i).Range.Sentences.Count MaxНомер = i End If Next i With .Paragraphs(MaxНомер).Range.Font .Italic = True .Color = wdColorRed End With .Content.InsertParagraphAfter .Range(Start:=.Range.End - 1, End:=.Range.End - 1).Text = _ .ComputeStatistics(wdStatisticParagraphs) .Content.InsertParagraphAfter .Range(Start:=.Range.End - 1, End:=.Range.End - 1).Text = MaxНомер End With End Sub Sub P2() 'Второй вопрос Dim КолСлов As Long Dim Слово As Word.Range With ActiveDocument If .ComputeStatistics(wdStatisticParagraphs) < 4 Then MsgBox "В предложении меньше 4 абазацев; программа будет завершена", vbCritical Exit Sub End If For Each Слово In .Paragraphs(4).Range.Words If Left((Trim(Слово)), 1) = Right((Trim(Слово)), 1) Then КолСлов = КолСлов + 1 End If Next Слово End With MsgBox "В 4 абазаце количество слов, начинающихся и заканчивающихся на одну букву, равно: " & КолСлов End Sub Sub P3() 'Третий вопрос Dim i As Long Dim MaxКол As Long Dim MaxНомер As Long With ActiveDocument MaxКол = .Words(1).Characters.Count MaxНомер = 1 For i = 2 To .Words.Count If .Words(i).Characters.Count > MaxКол Then MaxКол = .Words(i).Characters.Count MaxНомер = i End If Next i .Range(Start:=.Words(MaxНомер).Sentences(1).Start, End:=.Words(MaxНомер).Sentences(1).End).Copy .Content.InsertParagraphBefore .Range(Start:=0, End:=0).Paste End With End Sub |
Отправлено: 19:32, 23-03-2011 | #4 |
![]() |
Участник сейчас на форуме |
![]() |
Участник вне форума |
![]() |
Автор темы |
![]() |
Сообщение прикреплено |
| |||||
Название темы | Автор | Информация о форуме | Ответов | Последнее сообщение | |
[решено] Отладка/тестирование скриптов | zbruy | AutoIt | 2 | 26-09-2009 16:53 | |
C/C++ - Отладка программ в Visual C++ | gustav21 | Программирование и базы данных | 2 | 26-09-2008 20:30 | |
Отладка под Макинтош, помогите плиз | Neto | Вебмастеру | 5 | 23-05-2005 06:41 | |
Не работает отладка в Visual C++ 6.0 | ic | Программирование и базы данных | 5 | 08-05-2004 22:01 | |
Отладка программы в защенном режиме | Guest | Программирование и базы данных | 4 | 20-11-2003 03:01 |
|