Вы не вошли. Пожалуйста, войдите или зарегистрируйтесь.
Страницы 1
Чтобы отправить ответ, вы должны войти или зарегистрироваться
Сообщений [ 5 ]
- Slamzor
- сержант
- Неактивен
- Зарегистрирован: 13.12.2012
- Сообщений: 32
Тема: Оптимизировать макрос обработки параграфов
Здравствуйте, помогите добавить в макрос несколько строк:
1) Нужно исключить обработку таблиц и рисунков.
2) Исключить списки.
3) Добавить возможность работать в выделенной области документа.
Sub Indent()
Dim p As Paragraph
For Each p In ActiveDocument.Paragraphs
If Not p.Style Like "Заголовок*" & "Название таблицы" & "Название объекта" & "Название рисунка" & "Абзац списка" _
& "Гиперссылка" & "СОДЕРЖАНИЕ" & "Параграф рисунка" Then ' стили исключения
With p.Range
.Font.Name = "Times New Roman"
.Font.Size = 12
.ParagraphFormat.LineSpacingRule = wdLineSpace1pt0 'одиночный межстрочный
.ParagraphFormat.SpaceBefore = 6 ' интервал перед
.ParagraphFormat.SpaceAfter = 6 ' интервал после
.ParagraphFormat.FirstLineIndent = CentimetersToPoints(1.25) ' отступ
End With
End If
Next
End Sub
- shanemac51
- генерал-полковник
- Неактивен
- Зарегистрирован: 05.03.2012
- Сообщений: 467
- Поблагодарили: 119
- За сообщение: 1
Re: Оптимизировать макрос обработки параграфов
по крайней мере
Sub Indent25()
Dim p As Paragraph
For Each p In ActiveDocument.Paragraphs
If p.Style Like "Заголовок*" _
Or p.Style Like "Название*" _
Or p.Style Like "Название таблицы*" _
Or p.Style Like "Название объекта*" _
Or p.Style Like "Название рисунка*" _
Or p.Style Like "Абзац списка*" _
Or p.Style Like "Гиперссылка*" _
Or p.Style Like "СОДЕРЖАНИЕ*" _
Or p.Style Like "Параграф рисунка*" Then ' стили исключения
Else
With p.Range
.Font.Name = "Times New Roman"
.Font.Size = 12
.ParagraphFormat.LineSpacingRule = wdLineSpaceSingle 'одиночный межстрочный
.ParagraphFormat.SpaceBefore = 6 ' интервал перед
.ParagraphFormat.SpaceAfter = 6 ' интервал после
.ParagraphFormat.FirstLineIndent = CentimetersToPoints(1.25) ' отступ
End With
End If
Next
End Sub
- viter.alex
- Модератор
- Неактивен
- Откуда: Харьков, Украина
- Зарегистрирован: 21.12.2009
- Сообщений: 884
- Поблагодарили: 140
- За сообщение: 1
Re: Оптимизировать макрос обработки параграфов
Slamzor пишет:1) Нужно исключить обработку таблиц и рисунков.
If Not p.Range.Information(wdWithInTable) And _
p.Range.ShapeRange.Count =0 And _
p.Range.InlineShapes.Count = 0 Then
'Выполняем нужные действия
End If
Slamzor пишет:2) Исключить списки.
If p.Range.ListFormat.ListType = wdListNoNumbering Then
'Выполняем нужные действия
End If
Slamzor пишет:3) Добавить возможность работать в выделенной области документа.
Вместо ActiveDocument использовать Selection
Лучше день потерять — потом за пять минут долететь!
- Slamzor
- сержант
- Неактивен
- Зарегистрирован: 13.12.2012
- Сообщений: 32
Re: Оптимизировать макрос обработки параграфов
Подскажите, в этом случае (Or p.Style Like "Название объекта*") подстановочные знаки работают? То есть будет ли (Or p.Style Like "Название*") восприниматься как стиль Название объекта и название таблицы (рисунка)?
И можно ли использовать в этом случае:
ActiveDocument.Styles ("Название*")
- viter.alex
- Модератор
- Неактивен
- Откуда: Харьков, Украина
- Зарегистрирован: 21.12.2009
- Сообщений: 884
- Поблагодарили: 140
- За сообщение: 1
Re: Оптимизировать макрос обработки параграфов
Оператор Like понимает знаки * и ?
С ActiveDocument.Styles такой фокус не пройдёт: нужно полное имя стиля
Лучше день потерять — потом за пять минут долететь!
Сообщений [ 5 ]
Страницы 1
Чтобы отправить ответ, вы должны войти или зарегистрироваться
Оптимизировать макрос обработки параграфов
Если ваша трудовая деятельность или учеба предполагает работу с большим количеством различных текстов, то основной ваш рабочий инструмент наверняка редактор текста Microsoft Word. Наш сайт о Microsoft Office Word даст ответ про: как вложить картинку в документ, чтобы потом при просмотре можно было увеличить.
Эта мощная программа, которая способна значительно автоматизировать набор текста, ускорить редактирования, выбрать самый удобный из множества предложенных вариантов оформления вашей работы. Наш сайт о Microsoft Office Word даст ответ про: какой размер шрифта word соответствует чертежному 10.
У каждого человека, использующего Ворд, со временем накапливается запас различных хитрых приемов и способов облегчить свой труд. Наш сайт о Microsoft Office Word даст ответ про: как добавить вкладку adobe на панели меню в office 2010.
Поделиться своими «тайными знаниями» и узнать секреты других пользователей вы можете на форуме сайта Ворд Эксперт, в котором обсуждается все, связанное с этой программой. Наш сайт о Microsoft Office Word даст ответ про: как установить word 8.
Ворд Эксперт – это три основных направления. Первое - ответы на стандартные вопросы, которые возникают у многих пользователей (например, о написании макросов в автоматическом режиме), Второе - обсуждения настроек различных версий программы, проблем и нюансов редактирования и форматирования текстов, а также вопросов автоматизации работы. Наш сайт о Microsoft Office Word даст ответ про: как сделать текст из столбика на ширину всего листа.
И, наконец, предложение готовых путей и вариантов решения той либо иной проблемы.
Кроме того, вы можете заказать шаблон, макрос или любую другую работу, связанную с Вордом в подразделе «Заявки на разработку». На портале о Microsoft Office Word вы узнаете про: как восстановить первоначальный документ в ворде?.