PDA

View Full Version : Numbered List style vba code



an544r
11-02-2011, 04:34 AM
HI All

I need some vba code that will start a numbered list in the following format each bullet has single line spacing but between bullets it is double line spacing kind of like shown below but the second line is indented in too:

1. some text some text some text some text mmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmm

2. some text some text mmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmm

this is for word 2010

Thanks

macropod
11-02-2011, 05:02 AM
each bullet has single line spacing but between bullets it is double line spacing kind of like shown below but the second line is indented in too:
What bullets? All I see is two numbered lines.

If what you've posted represents the intended output, all you need to do is to set the paragraph before/after spacing (preferably via a paragraph Style) accordingly.

an544r
11-02-2011, 06:03 AM
need to have double space between each bullet but single space on the bullets themselves.

macropod
11-02-2011, 06:07 AM
Again: What bullets? There are no bullets in your post!!!

an544r
11-02-2011, 06:10 AM
i cant post links yet to show you how it should look but i want a numbered list where there is double spacing between each number in the list but for each line within a number on the list the line spacing is single

an544r
11-02-2011, 06:12 AM
this is for creating a numbered list in word 2010

macropod
11-02-2011, 06:16 AM
i want a numbered list where there is double spacing between each number in the list but for each line within a number on the list the line spacing is single
I've already told you how to do that:

set the paragraph before/after spacing (preferably via a paragraph Style) accordingly.
It's that simple.

an544r
11-02-2011, 06:17 AM
no thats sets the spacing before or after the actual bulleted list i want this for the bullet list itself

an544r
11-02-2011, 06:19 AM
this is how it should look

http://s9.postimage.org/xzubyympb/Untitled.png

macropod
11-02-2011, 06:25 AM
no thats sets the spacing before or after the actual bulleted list i want this for the bullet list itself
You obviously haven't tried what I've suggested - and there are no bullets in the document link you posted (only numbered paragraphs).

an544r
11-02-2011, 06:36 AM
well i have found that by unchecking don add paragraph spacing to the bullet number list adds the space between bullets how can i get it to do this via a macro or vba

macropod
11-02-2011, 06:42 AM
If you define an appropriate paragraph Style - which is the correct way of doing it - then all you need to do is to apply that Style to the text. Indeed, if you apply the Style to an empty paragraph before inserting any text (or before you create the 2nd paragraph), the same Style will continue every time you create a new paragraph.

an544r
11-02-2011, 06:48 AM
so how do i define a pargraph style that gives me the spacing between bullets?

this is what i currently have which doesnt give me that spacing:

Public Sub ParagraphNumbering()

'With Selection.ParagraphFormat
' .LeftIndent = CentimetersToPoints(1.27)
' .RightIndent = CentimetersToPoints(0)
' .SpaceBefore = 0
' .SpaceAfter = 0
' .LineSpacingRule = wdLineSpaceDouble
' .Alignment = wdAlignParagraphJustify
' .WidowControl = True
'.KeepWithNext = False
'.KeepTogether = False
'.PageBreakBefore = False
'.NoLineNumber = False
'.Hyphenation = True
'.FirstLineIndent = CentimetersToPoints(-1.27)
'.OutlineLevel = wdOutlineLevelBodyText
'End With

With Selection.ParagraphFormat
.LeftIndent = CentimetersToPoints(1.26)
.RightIndent = CentimetersToPoints(0)
.SpaceBefore = 0
'.SpaceBeforeAuto = False
.SpaceAfter = 10
'.SpaceAfterAuto = False
'.LineSpacingRule = wdLineSpaceSingle
.Alignment = wdAlignParagraphJustify
.WidowControl = True
.KeepWithNext = False
.KeepTogether = False
.PageBreakBefore = False
.NoLineNumber = False
.Hyphenation = True
.FirstLineIndent = CentimetersToPoints(-0.63)
.OutlineLevel = wdOutlineLevelBodyText
.CharacterUnitLeftIndent = 0
.CharacterUnitRightIndent = 0
.CharacterUnitFirstLineIndent = 0
.LineUnitBefore = 0
.LineUnitAfter = 0
.MirrorIndents = False
.TextboxTightWrap = wdTightNone
End With


With ListGalleries(wdOutlineNumberGallery).ListTemplates(2).ListLevels(1)
.NumberFormat = "%1"
.TrailingCharacter = wdTrailingTab
.NumberStyle = wdListNumberStyleArabic
.NumberPosition = CentimetersToPoints(0)
.Alignment = wdListLevelAlignLeft
.TextPosition = CentimetersToPoints(1.1)
.TabPosition = CentimetersToPoints(1.1)
.ResetOnHigher = 0
.StartAt = 1
With .Font
.Bold = wdUndefined
.Italic = wdUndefined
.StrikeThrough = wdUndefined
.Subscript = wdUndefined
.Superscript = wdUndefined
.Shadow = wdUndefined
.Outline = wdUndefined
.Emboss = wdUndefined
.Engrave = wdUndefined
.AllCaps = wdUndefined
.Hidden = wdUndefined
.Underline = wdUndefined
.Color = wdUndefined
.Size = wdUndefined
.Animation = wdUndefined
.DoubleStrikeThrough = wdUndefined
.Name = ""
End With
.LinkedStyle = ""
End With
With ListGalleries(wdOutlineNumberGallery).ListTemplates(2).ListLevels(2)
.NumberFormat = "%1.%2"
.TrailingCharacter = wdTrailingTab
.NumberStyle = wdListNumberStyleArabic
.NumberPosition = CentimetersToPoints(0)
.Alignment = wdListLevelAlignLeft
.TextPosition = CentimetersToPoints(1.6) 'one
.TextPosition = CentimetersToPoints(1.1)
.TabPosition = CentimetersToPoints(1.1)
.TabPosition = CentimetersToPoints(1.6) 'two
.ResetOnHigher = 1
.StartAt = 1
With .Font
.Bold = wdUndefined
.Italic = wdUndefined
.StrikeThrough = wdUndefined
.Subscript = wdUndefined
.Superscript = wdUndefined
.Shadow = wdUndefined
.Outline = wdUndefined
.Emboss = wdUndefined
.Engrave = wdUndefined
.AllCaps = wdUndefined
.Hidden = wdUndefined
.Underline = wdUndefined
.Color = wdUndefined
.Size = wdUndefined
.Animation = wdUndefined
.DoubleStrikeThrough = wdUndefined
.Name = ""
End With
.LinkedStyle = ""
End With
With ListGalleries(wdOutlineNumberGallery).ListTemplates(2).ListLevels(3)
.NumberFormat = "%1.%2.%3"
.TrailingCharacter = wdTrailingTab
.NumberStyle = wdListNumberStyleArabic
.NumberPosition = CentimetersToPoints(1.1)
.Alignment = wdListLevelAlignLeft
.TextPosition = CentimetersToPoints(2.2)
.TabPosition = CentimetersToPoints(1.7)
' .TextPosition = CentimetersToPoints(3.9)
' .TabPosition = CentimetersToPoints(3.9)
.ResetOnHigher = 2
.StartAt = 1
With .Font
.Bold = wdUndefined
.Italic = wdUndefined
.StrikeThrough = wdUndefined
.Subscript = wdUndefined
.Superscript = wdUndefined
.Shadow = wdUndefined
.Outline = wdUndefined
.Emboss = wdUndefined
.Engrave = wdUndefined
.AllCaps = wdUndefined
.Hidden = wdUndefined
.Underline = wdUndefined
.Color = wdUndefined
.Size = wdUndefined
.Animation = wdUndefined
.DoubleStrikeThrough = wdUndefined
.Name = ""
End With
.LinkedStyle = ""
End With
With ListGalleries(wdOutlineNumberGallery).ListTemplates(2).ListLevels(4)
.NumberFormat = "(%4)"
.TrailingCharacter = wdTrailingTab
.NumberStyle = wdListNumberStyleLowercaseLetter
.NumberPosition = CentimetersToPoints(2.2)
.Alignment = wdListLevelAlignLeft
.TextPosition = CentimetersToPoints(3)
.TabPosition = CentimetersToPoints(0.8)
'.TextPosition = CentimetersToPoints(3.9)
' .TabPosition = CentimetersToPoints(3.9)
.ResetOnHigher = 3
.StartAt = 1
With .Font
.Bold = wdUndefined
.Italic = wdUndefined
.StrikeThrough = wdUndefined
.Subscript = wdUndefined
.Superscript = wdUndefined
.Shadow = wdUndefined
.Outline = wdUndefined
.Emboss = wdUndefined
.Engrave = wdUndefined
.AllCaps = wdUndefined
.Hidden = wdUndefined
.Underline = wdUndefined
.Color = wdUndefined
.Size = wdUndefined
.Animation = wdUndefined
.DoubleStrikeThrough = wdUndefined
.Name = ""
End With
.LinkedStyle = ""
End With
With ListGalleries(wdOutlineNumberGallery).ListTemplates(2).ListLevels(5)
.NumberFormat = "(%5)"
.TrailingCharacter = wdTrailingTab
.NumberStyle = wdListNumberStyleLowercaseRoman
.NumberPosition = CentimetersToPoints(3)
.Alignment = wdListLevelAlignLeft
.TextPosition = CentimetersToPoints(3.6)
.TabPosition = CentimetersToPoints(3.2)
' .TextPosition = CentimetersToPoints(5.3)
' .TabPosition = CentimetersToPoints(5.3)
.ResetOnHigher = 4
.StartAt = 1
With .Font
.Bold = wdUndefined
.Italic = wdUndefined
.StrikeThrough = wdUndefined
.Subscript = wdUndefined
.Superscript = wdUndefined
.Shadow = wdUndefined
.Outline = wdUndefined
.Emboss = wdUndefined
.Engrave = wdUndefined
.AllCaps = wdUndefined
.Hidden = wdUndefined
.Underline = wdUndefined
.Color = wdUndefined
.Size = wdUndefined
.Animation = wdUndefined
.DoubleStrikeThrough = wdUndefined
.Name = ""
End With
.LinkedStyle = ""
End With
With ListGalleries(wdOutlineNumberGallery).ListTemplates(2).ListLevels(6)
.NumberFormat = ""
.TrailingCharacter = wdTrailingTab
.NumberStyle = wdListNumberStyleNone
.NumberPosition = CentimetersToPoints(0)
.Alignment = wdListLevelAlignLeft
.TextPosition = CentimetersToPoints(0)
.TabPosition = CentimetersToPoints(0)
.ResetOnHigher = 5
.StartAt = 1
With .Font
.Bold = wdUndefined
.Italic = wdUndefined
.StrikeThrough = wdUndefined
.Subscript = wdUndefined
.Superscript = wdUndefined
.Shadow = wdUndefined
.Outline = wdUndefined
.Emboss = wdUndefined
.Engrave = wdUndefined
.AllCaps = wdUndefined
.Hidden = wdUndefined
.Underline = wdUndefined
.Color = wdUndefined
.Size = wdUndefined
.Animation = wdUndefined
.DoubleStrikeThrough = wdUndefined
.Name = ""
End With
.LinkedStyle = ""
End With
With ListGalleries(wdOutlineNumberGallery).ListTemplates(2).ListLevels(7)
.NumberFormat = ""
.TrailingCharacter = wdTrailingTab
.NumberStyle = wdListNumberStyleNone
.NumberPosition = CentimetersToPoints(0)
.Alignment = wdListLevelAlignLeft
.TextPosition = CentimetersToPoints(0)
.TabPosition = CentimetersToPoints(0)
.ResetOnHigher = 6
.StartAt = 1
With .Font
.Bold = wdUndefined
.Italic = wdUndefined
.StrikeThrough = wdUndefined
.Subscript = wdUndefined
.Superscript = wdUndefined
.Shadow = wdUndefined
.Outline = wdUndefined
.Emboss = wdUndefined
.Engrave = wdUndefined
.AllCaps = wdUndefined
.Hidden = wdUndefined
.Underline = wdUndefined
.Color = wdUndefined
.Size = wdUndefined
.Animation = wdUndefined
.DoubleStrikeThrough = wdUndefined
.Name = ""
End With
.LinkedStyle = ""
End With
With ListGalleries(wdOutlineNumberGallery).ListTemplates(2).ListLevels(8)
.NumberFormat = ""
.TrailingCharacter = wdTrailingTab
.NumberStyle = wdListNumberStyleNone
.NumberPosition = CentimetersToPoints(0)
.Alignment = wdListLevelAlignLeft
.TextPosition = CentimetersToPoints(0)
.TabPosition = CentimetersToPoints(0)
.ResetOnHigher = 7
.StartAt = 1
With .Font
.Bold = wdUndefined
.Italic = wdUndefined
.StrikeThrough = wdUndefined
.Subscript = wdUndefined
.Superscript = wdUndefined
.Shadow = wdUndefined
.Outline = wdUndefined
.Emboss = wdUndefined
.Engrave = wdUndefined
.AllCaps = wdUndefined
.Hidden = wdUndefined
.Underline = wdUndefined
.Color = wdUndefined
.Size = wdUndefined
.Animation = wdUndefined
.DoubleStrikeThrough = wdUndefined
.Name = ""
End With
.LinkedStyle = ""
End With
With ListGalleries(wdOutlineNumberGallery).ListTemplates(2).ListLevels(9)
.NumberFormat = ""
.TrailingCharacter = wdTrailingTab
.NumberStyle = wdListNumberStyleNone
.NumberPosition = CentimetersToPoints(3.3)
.Alignment = wdListLevelAlignLeft
.TextPosition = CentimetersToPoints(5.1)
.TabPosition = CentimetersToPoints(5.1)
.ResetOnHigher = 6
.StartAt = 1
With .Font
.Bold = wdUndefined
.Italic = wdUndefined
.StrikeThrough = wdUndefined
.Subscript = wdUndefined
.Superscript = wdUndefined
.Shadow = wdUndefined
.Outline = wdUndefined
.Emboss = wdUndefined
.Engrave = wdUndefined
.AllCaps = wdUndefined
.Hidden = wdUndefined
.Underline = wdUndefined
.Color = wdUndefined
.Size = wdUndefined
.Animation = wdUndefined
.DoubleStrikeThrough = wdUndefined
.Name = ""
End With
.LinkedStyle = ""
End With
ListGalleries(wdOutlineNumberGallery).ListTemplates(2).Name = ""
Selection.Range.ListFormat.ApplyListTemplate ListTemplate:=ListGalleries( _
wdOutlineNumberGallery).ListTemplates(2), ContinuePreviousList:=False, _
ApplyTo:=wdListApplyToWholeList, DefaultListBehavior:=wdWord9ListBehavior

'CommandBars("AIMParagraphNumbering").Visible = True

End Sub

macropod
11-02-2011, 07:13 AM
so how do i define a pargraph style that gives me the spacing between bullets?
• On the Ribbon's Home tab, click on the small arrow on the Styles panel.
• Click on the 'New Style' button (lower left corner of the popup)
• Give the new Style a name
• Make the Style for the 'following paragraph' the same
• Choose Format|Paragraph and make the before and/or after spacing whatever you want (eg 6pt before and after)
• Click OK
• Choose Format|Numbering and apply the desired number format
• Click OK, OK.
From now on, whenever you want an auto-numbered list in this format, simply choose your Style from Word's Style Gallery. And, if you want the Style to be available in all documents, choose the 'New documents based on this template' option while you have the Styles dialogue open.

an544r
11-02-2011, 08:21 AM
how can i get the style thern across to users on other computers? is this saved in the normal.dotm template??

macropod
11-02-2011, 11:45 PM
how can i get the style thern across to users on other computers? is this saved in the normal.dotm template??
There are various ways, including:
1. You could use some vba code attached to your procedure to create the Style in the target document if it's not already present - that's fairly simple;
2. You could create a normal.dotx/dotm template with the Style in it and roll that out to all users. Be aware that this may be unwelcome for those who have already customized their normal.dotx/dotm template; and
3. Create a specific template for whatever you're using the code for, with the Style in it, and roll that out to all users. That template could even include whatever vba code the users need.
There are other ways as well, but one of these should get you going.