|
|
Thread Tools | Display Modes |
#1
|
|||
|
|||
Error 5941 when running my macro to auto populate fields throughout the word doc
I am completely new to VBA. I am trying to create an auto populating contract so that the user only has to enter replicated information in the contract once.
When I test the template - all of the fields populate except for those referring to Text118. Instead I get a message that says - Runtime error '5941': The requested member of the collection does not exist. I have made sure that I am using the right bookmark (Text118) and the macro is set to run on exit on Text118 but it is still not working. Does anyone else have any ideas? Many thanks in advance for any guidance. Code I am using is: Sub Replicate() With ActiveDocument .FormFields("Text88").Result = .FormFields("Text2").Result .FormFields("Text8").Result = .FormFields("Text2").Result .FormFields("Text9").Result = .FormFields("Text2").Result .FormFields("Text81").Result = .FormFields("Text2").Result .FormFields("Text10").Result = .FormFields("Text2").Result .FormFields("Text85").Result = .FormFields("Text4").Result .FormFields("Text13").Result = .FormFields("Text4").Result .FormFields("Text86").Result = .FormFields("Text5").Result .FormFields("Text14").Result = .FormFields("Text5").Result .FormFields("Text7").Result = .FormFields("Text6").Result .FormFields("Text82").Result = .FormFields("Text6").Result .FormFields("Text12").Result = .FormFields("Text118").Result .FormFields("Text18").Result = .FormFields("Text118").Result .FormFields("Text19").Result = .FormFields("Text118").Result .FormFields("Text20").Result = .FormFields("Text118").Result .FormFields("Text21").Result = .FormFields("Text118").Result .FormFields("Text22").Result = .FormFields("Text118").Result .FormFields("Text23").Result = .FormFields("Text118").Result .FormFields("Text24").Result = .FormFields("Text118").Result .FormFields("Text25").Result = .FormFields("Text118").Result .FormFields("Text26").Result = .FormFields("Text118").Result .FormFields("Text27").Result = .FormFields("Text118").Result .FormFields("Text28").Result = .FormFields("Text118").Result .FormFields("Text29").Result = .FormFields("Text118").Result .FormFields("Text30").Result = .FormFields("Text118").Result .FormFields("Text31").Result = .FormFields("Text118").Result .FormFields("Text32").Result = .FormFields("Text118").Result .FormFields("Text33").Result = .FormFields("Text118").Result .FormFields("Text34").Result = .FormFields("Text118").Result .FormFields("Text35").Result = .FormFields("Text118").Result .FormFields("Text36").Result = .FormFields("Text118").Result .FormFields("Text37").Result = .FormFields("Text118").Result .FormFields("Text38").Result = .FormFields("Text118").Result .FormFields("Text39").Result = .FormFields("Text118").Result .FormFields("Text40").Result = .FormFields("Text118").Result .FormFields("Text41").Result = .FormFields("Text118").Result .FormFields("Text42").Result = .FormFields("Text118").Result .FormFields("Text43").Result = .FormFields("Text118").Result .FormFields("Text44").Result = .FormFields("Text118").Result .FormFields("Text45").Result = .FormFields("Text118").Result .FormFields("Text46").Result = .FormFields("Text118").Result .FormFields("Text47").Result = .FormFields("Text118").Result .FormFields("Text48").Result = .FormFields("Text118").Result .FormFields("Text49").Result = .FormFields("Text118").Result .FormFields("Text50").Result = .FormFields("Text118").Result .FormFields("Text51").Result = .FormFields("Text118").Result .FormFields("Text52").Result = .FormFields("Text118").Result .FormFields("Text53").Result = .FormFields("Text118").Result .FormFields("Text54").Result = .FormFields("Text118").Result .FormFields("Text55").Result = .FormFields("Text118").Result .FormFields("Text56").Result = .FormFields("Text118").Result .FormFields("Text57").Result = .FormFields("Text118").Result .FormFields("Text58").Result = .FormFields("Text118").Result .FormFields("Text59").Result = .FormFields("Text118").Result .FormFields("Text60").Result = .FormFields("Text118").Result .FormFields("Text61").Result = .FormFields("Text118").Result .FormFields("Text62").Result = .FormFields("Text118").Result .FormFields("Text63").Result = .FormFields("Text118").Result .FormFields("Text64").Result = .FormFields("Text118").Result .FormFields("Text65").Result = .FormFields("Text118").Result .FormFields("Text66").Result = .FormFields("Text118").Result .FormFields("Text67").Result = .FormFields("Text118").Result .FormFields("Text68").Result = .FormFields("Text118").Result .FormFields("Text69").Result = .FormFields("Text118").Result .FormFields("Text70").Result = .FormFields("Text118").Result .FormFields("Text71").Result = .FormFields("Text118").Result .FormFields("Text72").Result = .FormFields("Text118").Result .FormFields("Text73").Result = .FormFields("Text118").Result .FormFields("Text74").Result = .FormFields("Text118").Result .FormFields("Text75").Result = .FormFields("Text118").Result .FormFields("Text76").Result = .FormFields("Text118").Result .FormFields("Text77").Result = .FormFields("Text118").Result .FormFields("Text78").Result = .FormFields("Text118").Result .FormFields("Text79").Result = .FormFields("Text118").Result .FormFields("Text80").Result = .FormFields("Text118").Result .FormFields("Text16").Result = .FormFields("Text15").Result .FormFields("Text109").Result = .FormFields("Text110").Result End With End Sub FYI - i chose this method so that I could protect the doc from other people editing it other than in the designated fields. {REF Text118} doesn't seem to update when protected so I can't use that method. |
#2
|
||||
|
||||
For the REF field to update, the Calculate on Exit check box of the cross referenced field must be checked and the cross reference must be in the body of the document and not in the header/footer or a text box. For references in the header footer, use a StyleRef field instead, but for that you will need a unique character style name applied to the referenced text.
From your description, one or more fields has lost its bookmark. Start by checking Text118.
__________________
Graham Mayor - MS MVP (Word) (2002-2019) Visit my web site for more programming tips and ready made processes www.gmayor.com |
#3
|
|||
|
|||
Thanks for your help Graham. It turns out I had Text12 and Text59 were referencing Text118 but neither were featured in the doc.
I feel a bit silly for not seeing that earlier but sometimes fresh eyes are needed! |
Tags |
5941, autopopulate, error |
Thread Tools | |
Display Modes | |
|
Similar Threads | ||||
Thread | Thread Starter | Forum | Replies | Last Post |
Auto populate & auto calculate values from other sections in the same word document | Frantic | Word VBA | 2 | 01-24-2015 04:54 PM |
Populate Word Drop-down list with Excel column then auto fill form fields with Excel data | Faldinio | Word VBA | 7 | 10-19-2014 06:03 AM |
auto populate fields for multiple files w/in folder | jbyrd | Word | 0 | 07-21-2014 07:35 AM |
Run-time error 5941 when deleting a row from a table | jpb103 | Word VBA | 1 | 05-26-2014 07:08 AM |
Auto-populate from form fields | kenelder | Word | 3 | 05-23-2013 07:50 AM |