View Single Post
  #6   Report Post  
Posted to microsoft.public.word.tables
Jamie Jamie is offline
external usenet poster
 
Posts: 45
Default Clear Form Fields

Hi Graham, I've been trying to use your code, but cannot seem to get it to
work. I keep trying which has only resulted in me prolonging this new
posting to you as well as admitting that I am at a loss.

My only suggestion, if you are still willing to help, is to send my document
to you. Of course, you'll need to walk me through that as well as I have
never attached a file to a post.
--
Jamie


"Graham Mayor" wrote:

Oops - I don't know where that # sneaked in from
It should have read
ActiveDocument.FormFields("Bookmarkname").Result = ""

--

Graham Mayor - Word MVP

My web site www.gmayor.com
Word MVP web site http://word.mvps.org



Graham Mayor wrote:
Having inserted the fields, you need to set their values to nul

eg

ActiveDocument.FormFields("Bookmarkname").Result = ""#

However when copying and pasting the pasted row will not have bookmark
names, so you would need to define the copied range (here Table 1 row
2) and zero all the fields in that range - eg along the lines of

Sub ResetFormFields()
Dim oRng As Range
Dim oFld As FormFields
Dim i As Long
Set oRng = ActiveDocument.Tables(1).Rows(2).Range
Set oFld = oRng.FormFields
For i = 1 To oFld.Count
oFld(i).Select
If oFld(i).Type = wdFieldFormDropDown Then
oFld(i).Result = oFld(i).DropDown.ListEntries(1).name
Else
oFld(i).Result = ""
End If
Next
End Sub



Jamie wrote:
Thanks for your reply Graham. I've looked at your coding for Add a
Row to a Table in a Protected Form and I am still at a loss as to how
to clear the pasted formfields. The coding that I currently have,
copies all the information including the formfields, now I just need
to clear the formfields. My columns are not the same width and the
last row is a merge of all 4 columns. I've been pulling things out of
your code to see if I can get the formfields to clear, but
unfortunately I don't know enough to be successful.

Thanks for your help.


See the examples - Add a row to a table in a protected form and
Repeat a block of formatted text and form fields based upon the
content of another form field at
http://www.gmayor.com/word_vba_examples.htm

--

Graham Mayor - Word MVP

My web site www.gmayor.com
Word MVP web site http://word.mvps.org



Jamie wrote:
I am working in Word 2003.

I have a table made up of 3 rows, the first two rows have 4
columns, the last is one column. The table looks like this:

Row 1: Date: FormField Client Name: FormField
Row 2: Referred To: FormField Follow-Up Date:FormField
Row 3: Comments:
FormField

This is a template and when the user tabs out of the Comments
FormField I have an On Exit macro that copies the table including
the FormFields. I can't come up with coding to clear the FormFields
in the new rows. My coding for copying and pasting the table is as
follows:

CopyTable Macro

ActiveDocument.Unprotect

Selection.MoveUp Unit:=wdLine, Count:=3
Selection.MoveDown Unit:=wdLine, Count:=2, Extend:=wdExtend
Selection.Copy
Selection.MoveDown Unit:=wdLine, Count:=1
Selection.PasteAndFormat (wdTableOriginalFormatting)
Selection.MoveUp Unit:=wdLine, Count:=4

ActiveDocument.Protect Type:=wdAllowOnlyFormFields, NoReset:=True

End Sub

Again this works as far as copying the table but I need the newly
pasted FormFields to be blank instead of having duplicate info from
above. Any help with this is greatly appreciated.