Welcome toWord.Tips.Net
Ask a Word Question
Make a Comment
Learn Access Now
Free Printable Forms
Beauty Tips
Car Tips
Cleaning Tips
College Tips
Cooking Tips
Excel2007 Tips
ExcelTips
Family Tips
Gardening Tips
Health Tips
Home Tips
Legal Tips
Money Tips
Organizing Tips
Pest Tips
Pet Tips
Wedding Tips
Word2007 Tips
WordTips
Setting Fraction Bar Overhang Spacing in the Equation Editor
Printing On Both Sides of the Paper
Turning Off AutoComplete for Dates
Understanding Auto Line Spacing
Adding Comments to Your Document
Conditional Calculations in Word
Steve creates documents that require the document's file name to be set forth in the header and in legal captions on the first and second pages of the document. He has created a macro that, after the file name is typed in the heading, copies it and pastes it in the text form fields in the captions at the proper places. His next document assembly step is to save the document using the "Save As" command. The document is to be saved using the same file name entered in the header and captions.
When doing this manually, Steve displays the Save As dialog box, pastes the file name into it, then clicks Save. He has tried to create the macro code to add this "Save As" step, but cannot figure out how to do it. When Word records the manual steps, Steve gets something like the following:
ActiveDocument.SaveAs FileName:="04562.sw.doc
This shows that Word is recording the specific file name being used when going through the manual steps, but Steve wants to use a different file name, based on what is in the header of the document. That information (the file name) happens to be in the Clipboard when the macro is run, so it is also possible to grab the information form the Clipboard, but Steve is also at a loss as to how to do that.
Since Steve already has a macro to copy the file name, and he is happy with that macro, it should only take a couple of changes to his code to get the file saved using the proper name. Try adding the following code to the appropriate places in your existing macro:
Dim strTemp As String Dim MyData As DataObject Set MyData = New DataObject MyData.GetFromClipboard strTemp = MyData.GetText(1) ActiveDocument.SaveAs FileName:=Trim(strTemp) & ".doc"
As long as you have a text string in the Clipboard that you want to use for your filename, this code should work. It even adds the .Doc extension to the end of the string in the Clipboard. This code requires that you set up a reference for the Microsoft Forms in the VBA Editor. (Choose References from the Tools menu in the Editor.)
Of course, it should be pointed out that you may want to rethink your approach to this macro. In fact, you may be able to get rid of most of your code if you take a different approach entirely. For instance, you could have people first save the document and then reference the file name in the document itself through the use of fields. (The FILENAME field could be used for this purpose.)
Instead of using a macro to copy the file name to the first and second pages of the document, you could also use a defined style (such as DocTitle or DocName) to refer to your file name, and then use the STYLEREF field elsewhere in your document to make reference to that name. That way it only has to be entered once, and no macro is necessary. You can find multiple ways of repeating data in different areas of the document at this page on a Word MVP's site:
http://gregmaxey.mvps.org/Repeating_Data.htm
You could also create a UserForm to collect the data from the user (to get the file name desired), and then save the document under that name. The macro could then assign the file name to the TITLE field, and anyplace in the document that referenced the TITLE field would automatically show the file name the user entered.
Tip #453 applies to Microsoft Word versions: 97 2000 2002 2003 2007
More Power! For some people, the prospect of creating Word macros can be scary. WordTips: The Macros can help you conquer your fears and you'll discover you're much more confident and productive as you make Word do exactly what you want. This is an invaluable source for learning macros. You are introduced to the topic in bite-sized chunks, pulled from past issues of WordTips. Learn at your own pace, exactly the way you want.