A Microsoft Office (Excel, Word) forum. OfficeFrustration

If this is your first visit, be sure to check out the FAQ by clicking the link above. You may have to register before you can post: click the register link above to proceed. To start viewing messages, select the forum that you want to visit from the selection below.

Go Back   Home » OfficeFrustration forum » Microsoft Word » Tables
Site Map Home Register Authors List Search Today's Posts Mark Forums Read  

How do I fill a Word table from data source?



 
 
Thread Tools Display Modes
  #1  
Old January 11th, 2006, 06:20 PM posted to microsoft.public.word.tables
external usenet poster
 
Posts: n/a
Default How do I fill a Word table from data source?

I have a Word document/form created with Word tables. I need to
electronically fill that form from an external data source before printing.
Can it be done?
  #2  
Old January 11th, 2006, 07:33 PM posted to microsoft.public.word.tables
external usenet poster
 
Posts: n/a
Default How do I fill a Word table from data source?

Have you considered using mailmerge?

Or the following macro will add a table to a document and populate it with
data from a table in an Access database:

Dim myDataBase As Database

Dim myActiveRecord As Recordset

Dim i As Long

Dim dtable As Table, drow As Row

'Open a database

Set myDataBase = OpenDatabase("c:\Access\Procurement Plan.mdb")

'Access the first record from a particular table

Set myActiveRecord = myDataBase.OpenRecordset("Currencies",
dbOpenForwardOnly)

'Add a table to the document with one row and as many fields as there are in
the database table

Set dtable = ActiveDocument.Tables.Add(Range:=Selection.Range, NumRows:=1,
numcolumns:=myActiveRecord.Fields.Count)

Set drow = dtable.Rows(1)

'Loop through all the records in the table until the end-of-file marker is
reached

Do While Not myActiveRecord.EOF

'Populate the cells in the Word table with the data from the current
record

For i = 1 To myActiveRecord.Fields.Count

drow.Cells(i).Range.Text = myActiveRecord.Fields(i - 1)

Next i

'Add a new row to the Word table and access the next record

Set drow = dtable.Rows.Add

myActiveRecord.MoveNext

Loop

'The last row will be empty, so delete it

drow.Delete

'Then close the database

myActiveRecord.Close

myDataBase.Close

--
Hope this helps.

Please reply to the newsgroup unless you wish to avail yourself of my
services on a paid consulting basis.

Doug Robbins - Word MVP

"BrownKoW" wrote in message
...
I have a Word document/form created with Word tables. I need to
electronically fill that form from an external data source before
printing.
Can it be done?



  #3  
Old February 22nd, 2006, 10:23 AM posted to microsoft.public.word.tables
external usenet poster
 
Posts: n/a
Default How do I fill a Word table from data source?

Can you please tell me if this also can be done with an adp, and based on a
view or stored procedure.
and when i would like to use it in a mailmerge can i use this to fill a
table on every page ?

Thanxs
  #4  
Old February 22nd, 2006, 09:15 PM posted to microsoft.public.word.tables
external usenet poster
 
Posts: n/a
Default How do I fill a Word table from data source?

What's adp?

Please explain in more detail what you are trying to do.

--
Hope this helps.

Please reply to the newsgroup unless you wish to avail yourself of my
services on a paid consulting basis.

Doug Robbins - Word MVP

"Timo Horn" Timo wrote in message
...
Can you please tell me if this also can be done with an adp, and based on
a
view or stored procedure.
and when i would like to use it in a mailmerge can i use this to fill a
table on every page ?

Thanxs



  #5  
Old February 23rd, 2006, 06:59 AM posted to microsoft.public.word.tables
external usenet poster
 
Posts: n/a
Default How do I fill a Word table from data source?

it s an access project, linked to an sql database, perhaps it helps.

Thanxs

Timo

"Doug Robbins - Word MVP" wrote:

What's adp?

Please explain in more detail what you are trying to do.

--
Hope this helps.

Please reply to the newsgroup unless you wish to avail yourself of my
services on a paid consulting basis.

Doug Robbins - Word MVP

"Timo Horn" Timo wrote in message
...
Can you please tell me if this also can be done with an adp, and based on
a
view or stored procedure.
and when i would like to use it in a mailmerge can i use this to fill a
table on every page ?

Thanxs




  #6  
Old February 24th, 2006, 08:33 PM posted to microsoft.public.word.tables
external usenet poster
 
Posts: n/a
Default How do I fill a Word table from data source?

If by a view, you mean an Access Query, that can be used as a datasource for
a mail merge in Word. If you want to use mail merge to display the
information in a table in a Word document, you would use a Directory type
mailmerge main document in which you have a single row table into the cells
of which you insert the merge fields corresponding to the fields in the
Access Query or Table. When you execute that merge to a new document, it
will contain a table with a row for data for every record in the datasource.

The following vba code will create a table in a Word documnet and populate
its cells with data from a table or query in an Access database:

Dim myDataBase As Database

Dim myActiveRecord As Recordset

Dim i As Long

Dim dtable As Table, drow As Row

'Open a database

Set myDataBase = OpenDatabase("c:\Access\Procurement Plan.mdb")

'Access the first record from a particular table

Set myActiveRecord = myDataBase.OpenRecordset("Currencies",
dbOpenForwardOnly)

'Add a table to the document with one row and as many fields as there are in
the database table

Set dtable = ActiveDocument.Tables.Add(Range:=Selection.Range, NumRows:=1,
numcolumns:=myActiveRecord.Fields.Count)

Set drow = dtable.Rows(1)

'Loop through all the records in the table until the end-of-file marker is
reached

Do While Not myActiveRecord.EOF

'Populate the cells in the Word table with the data from the current
record

For i = 1 To myActiveRecord.Fields.Count

drow.Cells(i).Range.Text = myActiveRecord.Fields(i - 1)

Next i

'Add a new row to the Word table and access the next record

Set drow = dtable.Rows.Add

myActiveRecord.MoveNext

Loop

'The last row will be empty, so delete it

drow.Delete

'Then close the database

myActiveRecord.Close

myDataBase.Close

--
Hope this helps.

Please reply to the newsgroup unless you wish to avail yourself of my
services on a paid consulting basis.

Doug Robbins - Word MVP

"Timo Horn" wrote in message
...
it s an access project, linked to an sql database, perhaps it helps.

Thanxs

Timo

"Doug Robbins - Word MVP" wrote:

What's adp?

Please explain in more detail what you are trying to do.

--
Hope this helps.

Please reply to the newsgroup unless you wish to avail yourself of my
services on a paid consulting basis.

Doug Robbins - Word MVP

"Timo Horn" Timo wrote in message
...
Can you please tell me if this also can be done with an adp, and based
on
a
view or stored procedure.
and when i would like to use it in a mailmerge can i use this to fill a
table on every page ?

Thanxs






 




Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

vB code is On
Smilies are On
[IMG] code is Off
HTML code is Off
Forum Jump

Similar Threads
Thread Thread Starter Forum Replies Last Post
strategy for data entry in multiple tables LAF Using Forms 18 April 25th, 2005 04:04 AM
Update - If statement Dan @BCBS Running & Setting Up Queries 13 December 14th, 2004 06:02 PM
Here's a shocker Mike Labosh General Discussion 2 October 26th, 2004 05:04 PM
Word 2000/2002 - Proper Mail Merge steps for ODBC? Tony_VBACoder Mailmerge 7 September 2nd, 2004 09:21 PM
How to run word and pass a mail merge values and fax it to the recipient Belinda Mailmerge 2 June 13th, 2004 12:49 AM


All times are GMT +1. The time now is 08:26 PM.


Powered by vBulletin® Version 3.6.4
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Copyright ©2004-2024 OfficeFrustration.
The comments are property of their posters.