Just to reiterate the shear volume of information...
Code:
With Selection.ParagraphFormat
.LeftIndent = InchesToPoints(0.2)
.RightIndent = InchesToPoints(0)
.SpaceBefore = 0
.SpaceBeforeAuto = False
.SpaceAfter = 0
.SpaceAfterAuto = False
.LineSpacingRule = wdLineSpaceSingle
.Alignment = wdAlignParagraphLeft
.WidowControl = True
.KeepWithNext = True
.KeepTogether = False
.PageBreakBefore = False
.NoLineNumber = False
.Hyphenation = True
.FirstLineIndent = InchesToPoints(0)
.OutlineLevel = wdOutlineLevelBodyText
.CharacterUnitLeftIndent = 0
.CharacterUnitRightIndent = 0
.CharacterUnitFirstLineIndent = 0
.LineUnitBefore = 0
.LineUnitAfter = 0
With .TabStops
.ClearAll
.Add Position:=InchesToPoints(3), _
Alignment:=wdAlignTabLeft, _
Leader:=wdTabLeaderSpaces
End With
With .Borders(wdBorderLeft)
.LineStyle = wdLineStyleSingle
.LineWidth = wdLineWidth050pt
.Color = wdColorAutomatic
End With
With .Borders(wdBorderRight)
.LineStyle = wdLineStyleSingle
.LineWidth = wdLineWidth050pt
.Color = wdColorAutomatic
End With
With .Borders(wdBorderTop)
.LineStyle = wdLineStyleSingle
.LineWidth = wdLineWidth050pt
.Color = wdColorAutomatic
End With
With .Borders(wdBorderBottom)
.LineStyle = wdLineStyleSingle
.LineWidth = wdLineWidth050pt
.Color = wdColorAutomatic
End With
With .Borders
.DistanceFromTop = 1
.DistanceFromLeft = 4
.DistanceFromBottom = 1
.DistanceFromRight = 4
.Shadow = False
End With
End With
That is most (but not all) of the properties
of a single paragraph. Now if you are going to - say - write that to a text file in a INI file type format it could come out like:
[Paragraph_1]
' other stuff!!!!!
SpaceBefore = 0
SpaceBeforeAuto = False
SpaceAfter = 0
SpaceAfterAuto = False
LineSpacingRule = wdLineSpaceSingle
Alignment = wdAlignParagraphLeft
WidowControl = True
' LOTS of other stuff
[Paragraph_2]
' other stuff!!!!!
SpaceBefore = 0
SpaceBeforeAuto = False
SpaceAfter = 0
SpaceAfterAuto = False
LineSpacingRule = wdLineSpaceSingle
Alignment = wdAlignParagraphLeft
WidowControl = True
' LOTS of other stuff!!!!
etc. etc. for EACH paragraph (which could be in the thousands.
Further, if this is a text file used by another application, you would not be able to use Word constant value (I assume). Maybe, but possible not. If not, the that other app would hav eno idea what (for example) wdLineSpaceSingle means. In which case you would have to change:
LineSpacingRule = wdLineSpaceSingle
to
LineSpacingRule = 0
to use the actual numeric value. THAT would mean you would have to
get those actual numeric values. That alone will not be trivial, as while I have a copy of all Word constants for version 2002 (it is two columns...30 pages long), I do not know if such a document exists for later versions. Microsoft got steadily more reticent about information. Yes, you CAN get the constant values using Object Browser, as the numeric value is displayed there. However, getting the actual numeric values via that route would drive anyone completely mad.
I don't know. This seems a gigantic project, and I really wonder WHY you need to do this.
Gerry