Sub ListFormFields()
Dim ThisDoc As Document, NewDoc As Document
Dim NewTable As Table
Dim RowNum As Long
Dim ffld As FormField
Application.ScreenUpdating = False
Set ThisDoc = ActiveDocument
Set NewDoc = Documents.Add
Set NewTable = NewDoc.Tables.Add(NewDoc.Content, ThisDoc.Content.FormFields.Count + 1, 2)
RowNum = 1
NewTable.Cell(RowNum, 1).Range.Text = "Field"
NewTable.Cell(RowNum, 2).Range.Text = "Location"
NewTable.Rows(1).Range.Font.Bold = True
NewTable.Rows(1).HeadingFormat = True
For Each ffld In ThisDoc.Content.FormFields
RowNum = RowNum + 1
NewTable.Cell(RowNum, 1).Range.Text = ffld.Name
NewTable.Cell(RowNum, 2).Range.Text = _
"Page " & ThisDoc.Range(ffld.Range.Start, ffld.Range.Start).Information(wdActiveEndPageNumber) _
& ", Line " & ffld.Range.Information(wdFirstCharacterLineNumber)
Next ffld
Application.ScreenUpdating = True
Set NewTable = Nothing
Set NewDoc = Nothing
Set ThisDoc = Nothing
End Sub
|