By clicking a button in Access I’d like to open word and automatcially create a file with a specific name. I’ve sorted out creating the correct folders and subfolders to contain the document, but don’t know how to tell word to save the file automatically as a specific name – any ideas?
![]() |
Patch reliability is unclear. Unless you have an immediate, pressing need to install a specific patch, don't do it. |
SIGN IN | Not a member? | REGISTER | PLUS MEMBERSHIP |
-
Create a word file (2000)
Home » Forums » AskWoody support » Productivity software by function » MS Access and database help » Create a word file (2000)
- This topic has 22 replies, 2 voices, and was last updated 21 years, 1 month ago.
Viewing 1 reply threadAuthorReplies-
WSHansV
AskWoody LoungerApril 2, 2004 at 10:53 am #808666You can use Automation to control Word from Access. Set a reference to the Microsoft Word 9.0 Object Library in Tools | References… (in the Visual Basic Editor.)
Dim objWord As New Word.Application
Dim objDoc As Word.Document
Dim strFileName As StringSet objDoc = objWord.Documents.Add
‘ code to fill the document goes here
‘ …
strFileName = … ‘ fill in the appropriate path and file name
objDoc.SaveAs strFileNameobjDoc.Close
Set objDoc = Nothing
objWord.Quit
Set objWord = NothingSee Automation 101 on WendellB‘s website for an introduction to Automation.
-
WSjaf90
AskWoody LoungerApril 2, 2004 at 11:10 am #808674Thanks Hans
Does the As New have any significance in the first line as opposed to just As?
I needed to be able to modify the file once I’d saved it, so used objWord.visible = true
If I do this with the close and quit options left in, it obviously displays the document for a split second, then closes the doc, quits Word and returns to Access. Can I allow it to stay in Word until the changes have been made and word is quit manually before going back to Access?
John
-
WSHansV
AskWoody LoungerApril 2, 2004 at 11:20 am #8086801. Dim … As New … means that you declare an object variable and set it at the same time. It is equivalent to
Dim objWord As Word.Application
Set objWord = CreateObject(“Word.Application”)2. If you want to edit the document, use
objWord.Visible = True
as you have done, and delete the lines objDoc.Close and objWord.Quit. The document will remain open in Word then until the user closes it.
-
WSjaf90
AskWoody Lounger -
WSHansV
AskWoody LoungerApril 2, 2004 at 11:37 am #808741According to the online help, SaveAs overwrites existing documents without asking, so you’ll have to write your own check:
strFileName = … ‘ fill in the appropriate path and file name
If Not Dir(strFileName) = “” Then
If MsgBox(“A document ” & strFileName & ” already exists. Overwrite it?”, _
vbYesNo + vbQuestion) = vbNo Then
Exit Sub
End If
End If
objDoc.SaveAs strFileName -
WSjaf90
AskWoody LoungerApril 2, 2004 at 12:17 pm #808812Is there a method of forcing Word to maximise at the time of opening the document? It seems to be a bit hit and miss as to how it starts.
Also, how would I open a specific file, rather than creating a new one – I’m going to change the routine so that if the file exists it opens it, otherwise it creates a new file with the specified filename.
-
WSHansV
AskWoody Lounger -
WSjaf90
AskWoody Lounger -
WSHansV
AskWoody LoungerApril 2, 2004 at 12:52 pm #808834If you need more, it is often easier to try out things in Word first, for example by recording a macro, and looking at the generated VBA code. When you’ve got it right, you can transfer the code to Access, prefixing methods and properties that belong to the Word application with objWord. For instance, if you type some text in a Word document, the macro recorder generates code like this:
Selection.TypeText Text:=”This is a sentence.”
Selection.TypeParagraphIn Access, this becomes:
objWord.Selection.TypeText Text:=”This is a sentence.”
objWord.Selection.TypeParagraph -
WSjaf90
AskWoody LoungerApril 2, 2004 at 1:09 pm #808838Thanks for the advice regarding the Word testing.
One slight problem I’m still having with this routine is with regard to which folder has the focus (for want of a better word).
The start of the routine creates a client folder in C:Data eg. c:DataClientOne and a subfolder in this for the contract eg. C:DataClientOneContractThree. The files I’m creating are then stored in this structure.
During testing I was creating and deleting files, but found that I wasn’t able to delete a subfolder which I had just written to via the Access/Word routines. I could delete the Word file which I had just created, but not the folder in which it was contained.
I probably won’t need to delete anything in this manner, but was interested to know what is holding the folder to make it undeleteable
The lock is released when I close the Access database
John -
WSHansV
AskWoody Lounger -
WSHansV
AskWoody Lounger -
WSjaf90
AskWoody LoungerApril 2, 2004 at 1:09 pm #808839Thanks for the advice regarding the Word testing.
One slight problem I’m still having with this routine is with regard to which folder has the focus (for want of a better word).
The start of the routine creates a client folder in C:Data eg. c:DataClientOne and a subfolder in this for the contract eg. C:DataClientOneContractThree. The files I’m creating are then stored in this structure.
During testing I was creating and deleting files, but found that I wasn’t able to delete a subfolder which I had just written to via the Access/Word routines. I could delete the Word file which I had just created, but not the folder in which it was contained.
I probably won’t need to delete anything in this manner, but was interested to know what is holding the folder to make it undeleteable
The lock is released when I close the Access database
John -
WSHansV
AskWoody LoungerApril 2, 2004 at 12:52 pm #808835If you need more, it is often easier to try out things in Word first, for example by recording a macro, and looking at the generated VBA code. When you’ve got it right, you can transfer the code to Access, prefixing methods and properties that belong to the Word application with objWord. For instance, if you type some text in a Word document, the macro recorder generates code like this:
Selection.TypeText Text:=”This is a sentence.”
Selection.TypeParagraphIn Access, this becomes:
objWord.Selection.TypeText Text:=”This is a sentence.”
objWord.Selection.TypeParagraph -
WSjaf90
AskWoody Lounger -
WSHansV
AskWoody Lounger -
WSjaf90
AskWoody LoungerApril 2, 2004 at 12:17 pm #808813Is there a method of forcing Word to maximise at the time of opening the document? It seems to be a bit hit and miss as to how it starts.
Also, how would I open a specific file, rather than creating a new one – I’m going to change the routine so that if the file exists it opens it, otherwise it creates a new file with the specified filename.
-
WSHansV
AskWoody LoungerApril 2, 2004 at 11:37 am #808742According to the online help, SaveAs overwrites existing documents without asking, so you’ll have to write your own check:
strFileName = … ‘ fill in the appropriate path and file name
If Not Dir(strFileName) = “” Then
If MsgBox(“A document ” & strFileName & ” already exists. Overwrite it?”, _
vbYesNo + vbQuestion) = vbNo Then
Exit Sub
End If
End If
objDoc.SaveAs strFileName
-
-
WSjaf90
AskWoody Lounger
-
-
WSHansV
AskWoody LoungerApril 2, 2004 at 11:20 am #8086811. Dim … As New … means that you declare an object variable and set it at the same time. It is equivalent to
Dim objWord As Word.Application
Set objWord = CreateObject(“Word.Application”)2. If you want to edit the document, use
objWord.Visible = True
as you have done, and delete the lines objDoc.Close and objWord.Quit. The document will remain open in Word then until the user closes it.
-
-
WSjaf90
AskWoody LoungerApril 2, 2004 at 11:10 am #808675Thanks Hans
Does the As New have any significance in the first line as opposed to just As?
I needed to be able to modify the file once I’d saved it, so used objWord.visible = true
If I do this with the close and quit options left in, it obviously displays the document for a split second, then closes the doc, quits Word and returns to Access. Can I allow it to stay in Word until the changes have been made and word is quit manually before going back to Access?
John
-
-
WSHansV
AskWoody LoungerApril 2, 2004 at 10:53 am #808667You can use Automation to control Word from Access. Set a reference to the Microsoft Word 9.0 Object Library in Tools | References… (in the Visual Basic Editor.)
Dim objWord As New Word.Application
Dim objDoc As Word.Document
Dim strFileName As StringSet objDoc = objWord.Documents.Add
‘ code to fill the document goes here
‘ …
strFileName = … ‘ fill in the appropriate path and file name
objDoc.SaveAs strFileNameobjDoc.Close
Set objDoc = Nothing
objWord.Quit
Set objWord = NothingSee Automation 101 on WendellB‘s website for an introduction to Automation.
Viewing 1 reply thread -

Plus Membership
Donations from Plus members keep this site going. You can identify the people who support AskWoody by the Plus badge on their avatars.
AskWoody Plus members not only get access to all of the contents of this site -- including Susan Bradley's frequently updated Patch Watch listing -- they also receive weekly AskWoody Plus Newsletters (formerly Windows Secrets Newsletter) and AskWoody Plus Alerts, emails when there are important breaking developments.
Get Plus!
Welcome to our unique respite from the madness.
It's easy to post questions about Windows 11, Windows 10, Win8.1, Win7, Surface, Office, or browse through our Forums. Post anonymously or register for greater privileges. Keep it civil, please: Decorous Lounge rules strictly enforced. Questions? Contact Customer Support.
Search Newsletters
Search Forums
View the Forum
Search for Topics
Recent Topics
-
Lumma malware takedown
by
EyesOnWindows
20 minutes ago -
“kill switches” found in Chinese made power inverters
by
Alex5723
1 hour, 54 minutes ago -
Windows 11 – InControl vs pausing Windows updates
by
Kathy Stevens
1 hour, 48 minutes ago -
Meet Gemini in Chrome
by
Alex5723
5 hours, 53 minutes ago -
DuckDuckGo’s Duck.ai added GPT-4o mini
by
Alex5723
6 hours, 2 minutes ago -
Trump signs Take It Down Act
by
Alex5723
14 hours, 1 minute ago -
Do you have a maintenance window?
by
Susan Bradley
1 hour, 10 minutes ago -
Freshly discovered bug in OpenPGP.js undermines whole point of encrypted comms
by
Nibbled To Death By Ducks
1 hour, 42 minutes ago -
Cox Communications and Charter Communications to merge
by
not so anon
17 hours, 20 minutes ago -
Help with WD usb driver on Windows 11
by
Tex265
22 hours, 30 minutes ago -
hibernate activation
by
e_belmont
1 day, 2 hours ago -
Red Hat Enterprise Linux 10 with AI assistant
by
Alex5723
1 day, 6 hours ago -
Windows 11 Insider Preview build 26200.5603 released to DEV
by
joep517
1 day, 9 hours ago -
Windows 11 Insider Preview build 26120.4151 (24H2) released to BETA
by
joep517
1 day, 9 hours ago -
Fixing Windows 24H2 failed KB5058411 install
by
Alex5723
5 hours, 14 minutes ago -
Out of band for Windows 10
by
Susan Bradley
1 day, 13 hours ago -
Giving UniGetUi a test run.
by
RetiredGeek
1 day, 20 hours ago -
Windows 11 Insider Preview Build 26100.4188 (24H2) released to Release Preview
by
joep517
2 days, 4 hours ago -
Microsoft is now putting quantum encryption in Windows builds
by
Alex5723
14 minutes ago -
Auto Time Zone Adjustment
by
wadeer
2 days, 8 hours ago -
To download Win 11 Pro 23H2 ISO.
by
Eddieloh
2 days, 6 hours ago -
Manage your browsing experience with Edge
by
Mary Branscombe
6 hours, 5 minutes ago -
Fewer vulnerabilities, larger updates
by
Susan Bradley
23 hours, 38 minutes ago -
Hobbies — There’s free software for that!
by
Deanna McElveen
1 day, 6 hours ago -
Apps included with macOS
by
Will Fastie
1 day, 3 hours ago -
Xfinity home internet
by
MrJimPhelps
1 day ago -
Convert PowerPoint presentation to Impress
by
RetiredGeek
2 days, 1 hour ago -
Debian 12.11 released
by
Alex5723
3 days, 6 hours ago -
Microsoft: Troubleshoot problems updating Windows
by
Alex5723
3 days, 9 hours ago -
Woman Files for Divorce After ChatGPT “Reads” Husband’s Coffee Cup
by
Alex5723
2 days, 13 hours ago
Recent blog posts
Key Links
Want to Advertise in the free newsletter? How about a gift subscription in honor of a birthday? Send an email to sb@askwoody.com to ask how.
Mastodon profile for DefConPatch
Mastodon profile for AskWoody
Home • About • FAQ • Posts & Privacy • Forums • My Account
Register • Free Newsletter • Plus Membership • Gift Certificates • MS-DEFCON Alerts
Copyright ©2004-2025 by AskWoody Tech LLC. All Rights Reserved.