View Single Post
  #2   Report Post  
Posted to microsoft.public.word.tables
Doug Robbins - Word MVP Doug Robbins - Word MVP is offline
external usenet poster
 
Posts: 8,832
Default Automatic Hiding of Tables based upon value in first cell

The following macro will delete any tables in the document in which the
first cell in the first row is empty:

Dim i As Long
Dim cell1 As Range
With ActiveDocument
For i = .Tables.Count To 1 Step -1
Set cell1 = .Tables(i).Cell(1, 1).Range
cell1.End = cell1.End - 1
If cell1 = "" Then
cell1.Tables(1).Delete
End If
Next i
End With


--
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

"Spankit115" wrote in message
...
I am creating a Word 2002 document from mail merge that may have hundreds
of
records (and so hundreds of pages), usually generating 2 or 3 pages per
record. The data (from my family history hobby) is being merged onto the
document into separate tables. For example the first table would be the
persons name and address, then the second table could be names of parents,
the third table names of grandparents, the fourth great-grandparents, etc.

The problem is that in many cases there is no actual data in every table
and
so this is resulting in empty tables and wasted paper as there is no need
to
print the empty tables.

I can produce the data so that I can put a flag as the first cell for each
table to indicate if it should be hidden or not.

I am therefore looking to run a macro after the mail-merge to go through
the
document and see if there is any value in the first cell of the table, if
so,
no problem, if no value then I want to hide the whole table so that
nothing
is shown and the rest of the data moves up. Then carry on down through the
document repeating the process. I should then have a document that
contains
some pages with a record that has only one table, other records with maybe
3
tables, etc.

I have never done a Word macro before so some simple tips and steps would
be
appreciated. Many thanks in advance.