Solved

Word Automation - paragraphs and bullets

Posted on 2001-08-07
14
630 Views
Last Modified: 2012-05-04
I'm using Excel '97 to produce a report in Word '97. I'm exporting data from the Excel file to the report. The main difficulty I'm having understanding the InsertAfter statements and exactly how to just put some text at the end of the current document or format the text which I've just inserted. For example, I want to loop through a cloumn of cells until they are blank, putting the contents of each cell as a new paragraph, sequencially and each one of them with a Bulletpoint:

dim wordapp as word.application
dim worddoc as word.document
Set wordapp = CreateObject("Word.Application")
Wordapp.Documents.Add
Set WordDoc = wordapp.ActiveDocument
do while Trim(Range(Chr(intRow +65) & 1)).Value <> ""
WordDoc.Content.MoveEnd

WordDoc.Content.InsertAfter Worksheets("Sheet1").Range(Chr(intRow+65 &65).value

'some code which will put a formatted bulletinfront of the above?

loop

Please state if clarifcation is required....
Any comments greatly appreciated.
0
Comment
Question by:robertsmith28
  • 7
  • 4
  • 3
14 Comments
 

Author Comment

by:robertsmith28
ID: 6359585
oops, forgot to add some bits into the loop

introw = 1
do while...
..
..
..
..
intRow = intRow + 1
Loop
0
 
LVL 7

Expert Comment

by:Nosterdamus
ID: 6359622
Hi robert,

I posted a question in the MS Office topic area for you, pointing to this one.

Nosterdamus
0
 

Author Comment

by:robertsmith28
ID: 6359651
Nosterdamus,
Thanks - so have I - did n't realise which area I was in - oops!
0
Back Up Your Microsoft Windows Server®

Back up all your Microsoft Windows Server – on-premises, in remote locations, in private and hybrid clouds. Your entire Windows Server will be backed up in one easy step with patented, block-level disk imaging. We achieve RTOs (recovery time objectives) as low as 15 seconds.

 
LVL 7

Expert Comment

by:Nosterdamus
ID: 6359659
Should I delete my link question?
0
 

Author Comment

by:robertsmith28
ID: 6359727
Actually it was my other misplaced question! Thanks - just leave I reckon.
0
 
LVL 17

Accepted Solution

by:
calacuccia earned 100 total points
ID: 6359861
Hi Robert (thanks Noster for leading me here)

The easiest way to work around in Word documents is to use the Selection object, which is a objet from the Word.APplication object. First apply the formatting to the selection, then type some text, then put a paragraph mark, and so on...

example (I found some minor syntax problems in your code)

Dim wordapp As Word.Application
Dim worddoc As Word.document
Set wordapp = CreateObject("Word.Application")
wordapp.Documents.Add
wordapp.Visible = True
Set worddoc = wordapp.ActiveDocument
intRow = 1
Do While Trim(Range(Chr(intRow + 65) & 3).Value) <> ""
wordapp.Selection.EndKey wdStory 'This will make the selection (or the cursor) go
                                  'to the end of the document
wordapp.Selection.Range.ListFormat.ApplyListTemplate ListTemplate:=ListGalleries( _
        wdBulletGallery).ListTemplates(1), ContinuePreviousList:=False, ApplyTo:= _
        wdListApplyToWholeList
wordapp.Selection.TypeText Worksheets("Sheet1").Range(Chr(intRow + 65) & 4).Value 'Type text from Excel in selection (cursor)
wordapp.Selection.TypeParagraph 'Enter a paragraphs mark, cursor or selection will go to next paragraph
'some code which will put a formatted bulletinfront of the above?
intRow = intRow + 1

Loop


Hope this helps
calacuccia
0
 
LVL 17

Expert Comment

by:calacuccia
ID: 6359867
P.S. I changed the Chr(IntRow + 65) & 3 a little to match my sample sheet I was working on.
0
 
LVL 7

Expert Comment

by:Nosterdamus
ID: 6359884
Hi cal,

Nice to see you again... ;-)

Nosterdamus
0
 

Author Comment

by:robertsmith28
ID: 6360039
calacuccia,
That looks great - I'll just try to implement it - back in an hour or two...
Rob.
0
 

Author Comment

by:robertsmith28
ID: 6360374
calacuccia,
That looks great - I'll just try to implement it - back in an hour or two...
Rob.
0
 
LVL 7

Expert Comment

by:Nosterdamus
ID: 6360397
Hi Rob,

Just a hint. to avoid multiple postings, use the Reload Question link at the top of the page, instead of hitting the Browser's reload button.

Nosterdamus
0
 

Author Comment

by:robertsmith28
ID: 6360769
Thanks calacuccia, as always, was exactly what I was looking for - excellent!
0
 
LVL 17

Expert Comment

by:calacuccia
ID: 6362860
ThAnks, robert.

Regards
calacuccia
0
 

Author Comment

by:robertsmith28
ID: 6364251
calacuccia,
this one's also in the wrong area for 70 - FYI.

http://www.experts-exchange.com/jsp/qManageQuestion.jsp?ta=msaccess&qid=20164520
0

Featured Post

Simplifying Server Workload Migrations

This use case outlines the migration challenges that organizations face and how the Acronis AnyData Engine supports physical-to-physical (P2P), physical-to-virtual (P2V), virtual to physical (V2P), and cross-virtual (V2V) migration scenarios to address these challenges.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

The first two articles in this short series — Using a Criteria Form to Filter Records (http://www.experts-exchange.com/A_6069.html) and Building a Custom Filter (http://www.experts-exchange.com/A_6070.html) — discuss in some detail how a form can be…
I see at least one EE question a week that pertains to using temporary tables in MS Access.  But surprisingly, I was unable to find a single article devoted solely to this topic. I don’t intend to describe all of the uses of temporary tables in t…
Using Microsoft Access, learn some simple rules for how to construct tables in a relational database. Split up all multi-value fields into single values: Split up fields that belong to other things into separate tables: Make sure that all record…
In Microsoft Access, when working with VBA, learn some techniques for writing readable and easily maintained code.

789 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question