Re: Automatically naming documents with data in form fields?



Define a string that contains the path to the folder you want, and
attach it to the beginning of the file name:

Dim myFile As String
Dim myPath As String
myPath = "C:\Bay Area Mobile\"

' this part is the same as in the previous macro
With ActiveDocument.FormFields
myFile = .Item("Text1").Result
myFile = myFile & " " & _
.Item("Text2").Result
myFile = myFile & " " & _
Format(Now, "dd MMM yyyy")
myFile = myFile & " unit " & _
.Item("Text7").Result
myFile = myFile & ".doc"
End With

myFile = myPath & myFile

ActiveDocument.SaveAs FileName:=myFile

In each template, change the line that assigns the value of myPath to
the proper folder for that template's documents.

--
Regards,
Jay Freedman
Microsoft Word MVP FAQ: http://word.mvps.org
Email cannot be acknowledged; please post all follow-ups to the
newsgroup so all may benefit.

On Sun, 12 Mar 2006 11:05:26 -0800, AMG
<AMG@xxxxxxxxxxxxxxxxxxxxxxxxx> wrote:

That worked beautifully! However, I have more than one template and would
like to automatically save the document in a particular file, depending on
which template I am using. For example, any document made with template BAM
would be saved in a file named "Bay Area Mobile" using data from the form
fields as its title.

"Jay Freedman" wrote:

In that case, you want code like this, which constructs the file name in a
string, piece by piece, and then uses the string to save the file:

Dim myFile As String
With ActiveDocument.FormFields
myFile = .Item("Text1").Result
myFile = myFile & " " & _
.Item("Text2").Result
myFile = myFile & " " & _
Format(Now, "dd MMM yyyy")
myFile = myFile & " unit " & _
.Item("Text7").Result
myFile = myFile & ".doc"
End With
ActiveDocument.SaveAs FileName:=myFile

You can choose the format you want for the date, but be careful not to put
in any characters that aren't valid in a file name.

All the other considerations I listed earlier still need to be taken care
of.

--
Regards,
Jay Freedman
Microsoft Word MVP FAQ: http://word.mvps.org
Email cannot be acknowledged; please post all follow-ups to the newsgroup so
all may benefit.

AMG wrote:
I have the form fields named text1, text2, etc. I want to save the
file as text1 text2 (today's date) unit text7.doc

"Jay Freedman" wrote:

On Mon, 20 Feb 2006 08:05:27 -0800, AMG
<AMG@xxxxxxxxxxxxxxxxxxxxxxxxx> wrote:

I want to save documents using data that I have entered in form
fields as the title.

You'll need a macro to do that. Because you've given almost no
details about your documents, it's hard to recommend what should be
in the macro. At a minimum you'll need a statement like this:

ActiveDocument.SaveAs FileName:= _
ActiveDocument.FormFields("CaseName").Result & ".doc"

but replace "CaseName" with the actual name of the form field
containing the text that forms the first part of the file name.

There are a lot of other things to think about. For instance:

- If you want the file to be saved in a folder other than the one
listed as the Documents folder in Tools > Options > File Locations,
you'll have to put that path into the FileName expression.

- You'll have to check the field result to make sure it isn't empty
and doesn't contain any characters that aren't legal in a file name.

- You'll need error handling in case the folder isn't available or
something else unexpected happens.

- If your macro is named FileSaveAs, it will run instead of the
built-in SaveAs command (see
http://www.word.mvps.org/FAQs/MacrosVBA/InterceptSavePrint.htm). That
may or may not be what you want to do.

--
Regards,
Jay Freedman
Microsoft Word MVP FAQ: http://word.mvps.org
Email cannot be acknowledged; please post all follow-ups to the
newsgroup so all may benefit.



.



Relevant Pages

  • Re: Mass Merging
    ... Dim myFile As String, PathToUse As String, SourceName As String ... 'to the folder where the documents are located. ... 'Create a new document containing the header information. ...
    (microsoft.public.word.mailmerge.fields)
  • Re: Please Help with database upate. New to database
    ... Always put the files to be imported into the same folder. ... Public Sub ImportFilesInDirectory(ByVal strExtension As String) ... Dim strFinalPath As String ... "DestinationTable", myFile, False ...
    (comp.databases.ms-access)
  • Re: Automatically naming documents with data in form fields?
    ... string, piece by piece, and then uses the string to save the file: ... "Jay Freedman" wrote: ... You'll need a macro to do that. ... listed as the Documents folder in Tools> Options> File Locations, ...
    (microsoft.public.word.docmanagement)
  • Re: change paper size
    ... Dim myFile As String ... Dim PathToUse As String ... 'Next file in folder ...
    (microsoft.public.word.docmanagement)
  • Re: Making Changes in a Group of Workbooks
    ... I bet the folder you selected was: ... Dim MyPath As String ... Dim MyFile As String ...
    (microsoft.public.excel.programming)