ExcelBanter

ExcelBanter (https://www.excelbanter.com/)
-   Excel Programming (https://www.excelbanter.com/excel-programming/)
-   -   Set Word Document Style (https://www.excelbanter.com/excel-programming/374000-set-word-document-style.html)

eholz1

Set Word Document Style
 
Hello Group,

I am trying to set a doc style from an excel macro to a word document.
I can set the style with "in-line" code, but cannot set the style (get
an "object" does not exist error)
from a sub procedure. I can move down in the word doc from a sub
procedure but it seems I cannot set the style for a line (like "Header
3", etc) Below is the sub procedure - what am I missing? I pass the
doc object and the application object.

Sub SelectBookMarkPlace(wApp As Word.Application, nCount As Integer)
With wApp.Selection
.MoveDown Unit:=wdParagraph, Count:=nCount, Extend:=wdMove
'.Style = thisDoc.Styles("Header 3")
End With
End Sub

thanks,

eholz1


Dave Peterson

Set Word Document Style
 
Untested.

It looks like ThisDoc isn't defined anywhere.

maybe ???

dim ThisDoc as object
set thisdoc = wApp.activedocument

And unless you have a reference set to MSWord, I think you'll have trouble with
those MSWord constants.

You may want to replace them with their values:

?wdParagraph
4
?wdMove
0



eholz1 wrote:

Hello Group,

I am trying to set a doc style from an excel macro to a word document.
I can set the style with "in-line" code, but cannot set the style (get
an "object" does not exist error)
from a sub procedure. I can move down in the word doc from a sub
procedure but it seems I cannot set the style for a line (like "Header
3", etc) Below is the sub procedure - what am I missing? I pass the
doc object and the application object.

Sub SelectBookMarkPlace(wApp As Word.Application, nCount As Integer)
With wApp.Selection
.MoveDown Unit:=wdParagraph, Count:=nCount, Extend:=wdMove
'.Style = thisDoc.Styles("Header 3")
End With
End Sub

thanks,

eholz1


--

Dave Peterson

Ed

Set Word Document Style
 
Check the Styles Collection Object in Word VBA Help. The collection exists
under the Document object. Likewise the Selection object exists only in a
document. If you set an object to your document as Dave suggested, you
should get better results.

Sub SelectBookMarkPlace(wApp As Word.Application, nCount As Integer)

dim ThisDoc as object
set thisdoc = wApp.activedocument
With ThisDoc.Selection
.MoveDown Unit:=wdParagraph, Count:=nCount, Extend:=wdMove
.Style = ThisDoc.Styles("Header 3")
End With
End Sub



Untested, but probably closer to actual.

Ed

"Dave Peterson" wrote in message
...
Untested.

It looks like ThisDoc isn't defined anywhere.

maybe ???

dim ThisDoc as object
set thisdoc = wApp.activedocument

And unless you have a reference set to MSWord, I think you'll have trouble
with
those MSWord constants.

You may want to replace them with their values:

?wdParagraph
4
?wdMove
0



eholz1 wrote:

Hello Group,

I am trying to set a doc style from an excel macro to a word document.
I can set the style with "in-line" code, but cannot set the style (get
an "object" does not exist error)
from a sub procedure. I can move down in the word doc from a sub
procedure but it seems I cannot set the style for a line (like "Header
3", etc) Below is the sub procedure - what am I missing? I pass the
doc object and the application object.

Sub SelectBookMarkPlace(wApp As Word.Application, nCount As Integer)
With wApp.Selection
.MoveDown Unit:=wdParagraph, Count:=nCount, Extend:=wdMove
'.Style = thisDoc.Styles("Header 3")
End With
End Sub

thanks,

eholz1


--

Dave Peterson




eholz1

Set Word Document Style
 
Hello Ed,
I need new glasses! the style SHOULD BE "Heading 3" not Header 3!!!!

dumb one!!!

Thanks for the info


Ed wrote:
Check the Styles Collection Object in Word VBA Help. The collection exists
under the Document object. Likewise the Selection object exists only in a
document. If you set an object to your document as Dave suggested, you
should get better results.

Sub SelectBookMarkPlace(wApp As Word.Application, nCount As Integer)

dim ThisDoc as object
set thisdoc = wApp.activedocument
With ThisDoc.Selection
.MoveDown Unit:=wdParagraph, Count:=nCount, Extend:=wdMove
.Style = ThisDoc.Styles("Header 3")
End With
End Sub



Untested, but probably closer to actual.

Ed

"Dave Peterson" wrote in message
...
Untested.

It looks like ThisDoc isn't defined anywhere.

maybe ???

dim ThisDoc as object
set thisdoc = wApp.activedocument

And unless you have a reference set to MSWord, I think you'll have trouble
with
those MSWord constants.

You may want to replace them with their values:

?wdParagraph
4
?wdMove
0



eholz1 wrote:

Hello Group,

I am trying to set a doc style from an excel macro to a word document.
I can set the style with "in-line" code, but cannot set the style (get
an "object" does not exist error)
from a sub procedure. I can move down in the word doc from a sub
procedure but it seems I cannot set the style for a line (like "Header
3", etc) Below is the sub procedure - what am I missing? I pass the
doc object and the application object.

Sub SelectBookMarkPlace(wApp As Word.Application, nCount As Integer)
With wApp.Selection
.MoveDown Unit:=wdParagraph, Count:=nCount, Extend:=wdMove
'.Style = thisDoc.Styles("Header 3")
End With
End Sub

thanks,

eholz1


--

Dave Peterson




All times are GMT +1. The time now is 07:21 PM.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
ExcelBanter.com