PDA

View Full Version : Solved: List Text that uses built-in style Heading 1 in a MsgBox



ahermle
10-02-2008, 11:59 PM
Dear Experts:

Below macro lists the text that uses built-in style Heading 1 in a new document.

I would like the macro changed with the following feature:

- list the text in a msgbox, not in a new document

I hope this is feasible. Thank you very much in advance for your
help.

Regards, Andreas

Sub ListHeading1ParasInNewDocument()
Dim oPara As Paragraph
Dim oDocH1 As Document
Dim oDoc As Document
Set oDoc = ActiveDocument
Set oDocH1 = Documents.Add
'Make sure oDocH1 starts empty and with style Normal
With oDocH1
.range = ""
.Paragraphs(1).Style = oDoc.Styles(wdStyleNormal)
End With
'Iterate through all paragraphs in active document
'If style is Heading 1, insert text in oDocH1
For Each oPara In oDoc.Paragraphs
If oPara.Style = oDoc.Styles(wdStyleHeading1) Then
oDocH1.range.InsertAfter oPara.range.Text
End If
Next oPara
'Clean up
Set oDoc = Nothing
Set oDocH1 = Nothing
End Sub

fumei
10-03-2008, 12:15 PM
Sub ListHeading1ParasInMessageBox()
Dim oPara As Paragraph
Dim oDoc As Document
Dim myString As String

Set oDoc = ActiveDocument
' Iterate through all paragraphs in active document
' If style is Heading 1, add text to string
' plus a paragraph mark
For Each oPara In oDoc.Paragraphs
If oPara.Style = oDoc.Styles(wdStyleHeading1) Then
myString = myString & oPara.Range.Text & vbCrLf
End If
Next oPara
' display message
MsgBox myString
'Clean up
Set oDoc = Nothing
End Sub

ahermle
10-04-2008, 11:06 AM
Hey fumei,
exactly what I wanted. Thank you very much. Regards, Andreas