Помогите дописать макрос - VB
Формулировка задачи:
Уважаемые знатоки.
Нашел на форуме макрос, который выполняет первую часть моей задачи. Т.е. выделяет фрагмент «от и до» ключевого слова. Но мне
необходимо нарезать текст по параграфам и вставить в файлы word под именами 01.doc (для Параграфов1), 02.doc (для Параграфов2) и т.д. Слово «Параграф…» вырезается с принадлежащим ему текстом.
Параграф1
Текст текст текст… текст. Текст
Параграф2
Текст текст текст…. Текст текст
Параграф3
Текст текст текст…. текст текст
……..
Параграф10
Текст текст текст текст…. текст
Этот макрос выделяет фрагменты
Sub FindWords( _
ByRef strWord1 As String, _
ByRef strWord2 As String)
Dim rng As Range
Static rngTemp As Range
Set rng = ActiveDocument.Content
With rng.Find
.ClearFormatting
.Text = strWord1
.Forward = True
.Wrap = wdFindContinue
.MatchWholeWord = True
.MatchCase = False
.Execute
If .Found = True Then
If rngTemp Is Nothing Then
Set rngTemp = rng
FindWords strWord2, strWord1
Else
rng.SetRange rngTemp.Start, rng. Start
rng.Select
Set rngTemp = Nothing
End If
End If
End With
End Sub
______________________________________
Sub Параграф1()
FindWords " Параграф1", " Параграф2"
End Sub
________________________________________
Sub Параграф2()
FindWords " Параграф2", " Параграф3"
End Sub
И т.д.
При этом я даже не смог придумать как выделить последний 10-й параграф
Sub Параграф10()
FindWords " Параграф10", "?????????????????"
End Sub
– не знаю каким символом указать на конец публикации.
Буду очень признателен за помощь.
Нашел на форуме макрос, который выполняет первую часть моей задачи. Т.е. выделяет фрагмент «от и до» ключевого слова. Но мне
необходимо нарезать текст по параграфам и вставить в файлы word под именами 01.doc (для Параграфов1), 02.doc (для Параграфов2) и т.д. Слово «Параграф…» вырезается с принадлежащим ему текстом.
Параграф1
Текст текст текст… текст. Текст
Параграф2
Текст текст текст…. Текст текст
Параграф3
Текст текст текст…. текст текст
……..
Параграф10
Текст текст текст текст…. текст
Этот макрос выделяет фрагменты
Sub FindWords( _
ByRef strWord1 As String, _
ByRef strWord2 As String)
Dim rng As Range
Static rngTemp As Range
Set rng = ActiveDocument.Content
With rng.Find
.ClearFormatting
.Text = strWord1
.Forward = True
.Wrap = wdFindContinue
.MatchWholeWord = True
.MatchCase = False
.Execute
If .Found = True Then
If rngTemp Is Nothing Then
Set rngTemp = rng
FindWords strWord2, strWord1
Else
rng.SetRange rngTemp.Start, rng. Start
rng.Select
Set rngTemp = Nothing
End If
End If
End With
End Sub
______________________________________
Sub Параграф1()
FindWords " Параграф1", " Параграф2"
End Sub
________________________________________
Sub Параграф2()
FindWords " Параграф2", " Параграф3"
End Sub
И т.д.
При этом я даже не смог придумать как выделить последний 10-й параграф
Sub Параграф10()
FindWords " Параграф10", "?????????????????"
End Sub
– не знаю каким символом указать на конец публикации.
Буду очень признателен за помощь.
Решение задачи: «Помогите дописать макрос»
textual
Листинг программы
<font color="blue">For</font> i=<font color="darkblue"><b>1</b></font> <font color="blue">To</font> <font color="darkblue"><b>10</b></font>
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д