Macropod,
I tested the code several times. Each time, it seems to work the first time, but when I run it again, I get:
Run-Time Error '462': The remote server machine does not exist or is unavailable.
This is how I have my code set up from an Excel activeX control:
Code:
'== I placed Sub AddBullet () in the "General Section" of the Module. The only change I made there was change Stl As Style to Stl As Word.Style
'== Followed by my code:
Sub Mycode()
t=Worksheets(1).Range("A3:A10000").SpecialCells(xlCellTypeConstants).Cells.Count
Set a = Worksheets(1).Range("A5").Cells
Set b = Worksheets(1).Range("B5").Cells
Dim wrdApp As Word.Application
Dim wrdDoc As Word.Document
Dim strFirstWord As String
Dim oPara As Word.Paragraph
Set wrdApp = CreateObject("Word.Application")
wrdApp.Visible = True
Set wrdDoc = wrdApp.Documents.Add
Application.ScreenUpdating = false
wrdApp.WindowState = wdWindowStateMinimize
With wrdApp.Selection
.TypeText Text:="Drafted" & Something
.TypeParagraph
For i = 1 To t
.ParagraphFormat.LineSpacingRule = wdLineSpaceSingle
.ParagraphFormat.LineSpacing = 10
.TypeText Text:=a.Value
.TypeParagraph
.TypeText Text:=b.Value
.TypeParagraph
Set a = a.Offset(1, 0).Cells
Set b = b.Offset(1, 0).Cells
Next i
End With
For Each oPara In wrdDoc.Paragraphs
strFirstWord = oPara.Range.Words(1).Text
With oPara.Range.Font
.Name = "Tahoma"
.Size = 10
End With
If Trim(strFirstWord) = "Drafted" Then
oPara.Range.Font.Bold = True
ElseIf Trim(strFirstWord) <> "Drafted" And Trim(strFirstWord) <> "Exceeded" Then
oPara.Range.Font.Bold = True
oPara.SpaceAfter = 0
ElseIf Trim(strFirstWord) = "Exceeded" Then
For i = 2 To 20
oPara.Range.Characters(i).Font.Italic = True
Next i
End If
Next
'== Followed by Demo() WIITHIN MyCode entered as
Dim Stl As Word.Style, bBulletA As Boolean, bBulletB As Boolean
bBulletA = False: bBulletB = False
For Each Stl In wrdDoc.Styles
If Stl.NameLocal = "BulletA" Then bBulletA = True
If Stl.NameLocal = "BulletB" Then bBulletB = True
Next
If bBulletA = False Then Call AddBulletStyle("BulletA", ChrW(61623), InchesToPoints(0), InchesToPoints(0.5), True)
If bBulletB = False Then Call AddBulletStyle("BulletB", "o", InchesToPoints(1), InchesToPoints(1.5), False)
With wrdDoc.Range
.Style = "BulletA"
.Paragraphs.First.Style = "Normal"
With .Find
.ClearFormatting
.Replacement.ClearFormatting
.Text = "^13Exceeded[!^13]@^13"
.Replacement.Text = ""
.Forward = True
.Wrap = wdFindStop
.Format = False
.MatchWildcards = True
.Execute
End With
Do While .Find.Found
.Start = .Start + 1
.End = .End - 1
.Style = "BulletB"
.Collapse wdCollapseEnd
.Find.Execute
Loop
End With
'== Followed by
wrdApp.WindowState = wdWindowStateNormal
Set wrdApp = Nothing
Set wrdDoc = Nothing
Application.ScreenUpdating = True
end sub
Thanks!
Jay