My spreadsheet contains date orientated data and I want the users to be able to click a button and generate a mailmerge document which is date sensitive
I.e. naive user clicks button and Week1 mailmerge is generated using only data that falls into the week1 parameters
same with week2 etc…
Can anyone help with the vba syntax for calling Word to open an existing document please?
![]() |
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 |
-
Call Word from Excel by vba (2000)
Home » Forums » AskWoody support » Productivity software by function » MS Excel and spreadsheet help » Call Word from Excel by vba (2000)
- This topic has 11 replies, 3 voices, and was last updated 20 years, 5 months ago.
AuthorTopicWSclockwork
AskWoody LoungerJanuary 8, 2005 at 1:18 pm #414291Viewing 6 reply threadsAuthorReplies-
WSsdckapr
AskWoody LoungerJanuary 8, 2005 at 3:08 pm #919669Does the example code in post 191959 answer your question?
Steve
-
WSsdckapr
AskWoody LoungerJanuary 8, 2005 at 3:08 pm #919670Does the example code in post 191959 answer your question?
Steve
-
WSHansV
AskWoody LoungerJanuary 8, 2005 at 3:47 pm #919682Here is a procedure that initiates a mail merge from Excel. To use it, you must set a reference (in Tools | References… in the Visual Basic Editor) to the Microsoft Word 9.0 Object Library. You will have to modify it to suit your needs; comments indicate where you must substitute the correct values.
Sub StartMailMerge()
Dim wrdApp As Word.Application
Dim wrdMergeDoc As Word.Document
Dim wrdResultDoc As Word.Document
Dim fNotActive As Boolean
Dim strSQL As String
Dim lngWeek As LongOn Error Resume Next
lngWeek = Val(InputBox("Enter week number", , Format(Date, "ww")))
If lngWeek 53 Then
Beep
Exit Sub
End If' Substitute sheet name and name of date column
strSQL = "SELECT * FROM `Sheet1$` WHERE Format([Date],'ww') = '" & lngWeek & "'"Set wrdApp = GetObject(, "Word.Application")
If wrdApp Is Nothing Then
Set wrdApp = CreateObject("Word.Application")
If wrdApp Is Nothing Then
MsgBox "Can't start Word.", vbExclamation
Exit Sub
End If
fNotActive = True
End IfOn Error GoTo ErrHandler
' Substitute path and name of Word document
Set wrdMergeDoc = wrdApp.Documents.Open("C:WordTest.doc")With wrdMergeDoc.MailMerge
.OpenDataSource Name:=ActiveWorkbook.FullName, _
ReadOnly:=True, LinkToSource:=True, AddToRecentFiles:=False, _
SQLStatement:=strSQL
' Optional: merge to new document (if it already contains merge fields)
.Execute
End WithExitHandler:
Set wrdMergeDoc = Nothing
Set wrdApp = Nothing
Exit SubErrHandler:
On Error Resume Next
MsgBox Err.Description, vbExclamation
wrdMergeDoc.Close SaveChanges:=wdDoNotSaveChanges
If fNotActive And Not (wrdApp Is Nothing) Then
wrdApp.Quit
End If
Set wrdApp = Nothing
Resume ExitHandler
End SubI hope this works correctly in Office 2000 (I’m using Office XP, where mail merge has changed considerably)
-
WSclockwork
AskWoody LoungerJanuary 9, 2005 at 7:33 am #919798Steves response is simple and straightforward but prints the mailmerge document, rather than running the mailmerge and printing all the pages
I changes the mailmerge document into a *.dot file, buit it then prints only page 1
Is there a way to make it print all the pages?
I tried – odoc.printout range:=wdPrintFromTo, from:=”1″, to:=”9″
but everything after odoc.prinout appears to be ignored -
WSclockwork
AskWoody LoungerJanuary 9, 2005 at 7:33 am #919799Steves response is simple and straightforward but prints the mailmerge document, rather than running the mailmerge and printing all the pages
I changes the mailmerge document into a *.dot file, buit it then prints only page 1
Is there a way to make it print all the pages?
I tried – odoc.printout range:=wdPrintFromTo, from:=”1″, to:=”9″
but everything after odoc.prinout appears to be ignored -
WSclockwork
AskWoody Lounger -
WSclockwork
AskWoody Lounger -
WSsdckapr
AskWoody LoungerJanuary 9, 2005 at 9:27 am #9198121) Try:
Dim wrdApp As object
2) concerning the code I referenced, this was not written by me. All the coding you are doing in the wrdApp is actually coding in Word VB and not excel VB. SInce I do not use word, I am very limited in my knowledge of word vb and will leave that to those who know that object model.
Steve
-
WSsdckapr
AskWoody LoungerJanuary 9, 2005 at 9:27 am #9198131) Try:
Dim wrdApp As object
2) concerning the code I referenced, this was not written by me. All the coding you are doing in the wrdApp is actually coding in Word VB and not excel VB. SInce I do not use word, I am very limited in my knowledge of word vb and will leave that to those who know that object model.
Steve
-
WSHansV
AskWoody Lounger -
WSHansV
AskWoody Lounger
-
Viewing 6 reply threads -

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
-
Very Quarrelsome Taskbar!
by
CWBillow
6 hours, 21 minutes ago -
Move OneNote Notebook OFF OneDrive and make it local
by
CWBillow
9 hours, 5 minutes ago -
Microsoft 365 to block file access via legacy auth protocols by default
by
Alex5723
10 hours, 23 minutes ago -
Is your battery draining?
by
Susan Bradley
20 minutes ago -
The 16-billion-record data breach that no one’s ever heard of
by
Alex5723
12 hours, 21 minutes ago -
Weasel Words Rule Too Many Data Breach Notifications
by
Nibbled To Death By Ducks
12 hours, 57 minutes ago -
Windows Command Prompt and Powershell will not open as Administrator
by
Gordski
16 hours, 11 minutes ago -
Intel Management Engine (Intel ME) Security Issue
by
PL1
6 hours, 55 minutes ago -
Old Geek Forced to Update. Buy a Win 11 PC? Yikes! How do I cope?
by
RonE22
50 minutes ago -
National scam day
by
Susan Bradley
1 minute ago -
macOS Tahoe 26 the end of the road for Intel Macs, OCLP, Hackintosh
by
Alex5723
30 minutes ago -
Cyberattack on some Washington Post journalists’ email accounts
by
Bob99
1 day, 14 hours ago -
Tools to support internet discussions
by
Kathy Stevens
2 hours, 42 minutes ago -
How get Group Policy to allow specific Driver to download?
by
Tex265
1 day, 5 hours ago -
AI is good sometimes
by
Susan Bradley
1 day, 21 hours ago -
Mozilla quietly tests Perplexity AI as a New Firefox Search Option
by
Alex5723
1 day, 11 hours ago -
Perplexity Pro free for 12 mos for Samsung Galaxy phones
by
Patricia Grace
2 days, 21 hours ago -
June KB5060842 update broke DHCP server service
by
Alex5723
2 days, 20 hours ago -
AMD Ryzen™ Chipset Driver Release Notes 7.06.02.123
by
Alex5723
3 days ago -
Excessive security alerts
by
WSSebastian42
1 day, 14 hours ago -
* CrystalDiskMark may shorten SSD/USB Memory life
by
Alex5723
3 days, 9 hours ago -
Ben’s excellent adventure with Linux
by
Ben Myers
2 hours, 27 minutes ago -
Seconds are back in Windows 10!
by
Susan Bradley
2 days, 20 hours ago -
WebBrowserPassView — Take inventory of your stored passwords
by
Deanna McElveen
1 day, 14 hours ago -
OS news from WWDC 2025
by
Will Fastie
1 day ago -
Need help with graphics…
by
WSBatBytes
2 days, 4 hours ago -
AMD : Out of Bounds (OOB) read vulnerability in TPM 2.0 CVE-2025-2884
by
Alex5723
4 days, 1 hour ago -
Totally remove or disable BitLocker
by
CWBillow
3 days ago -
Windows 10 gets 6 years of ESU?
by
n0ads
3 days, 3 hours ago -
Apple, Google stores still offer China-based VPNs, report says
by
Nibbled To Death By Ducks
4 days, 11 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.