![]() |
|
|
|
#1
|
|||
|
|||
|
This is merge Mail code FROM MS ACCESS IT Works fine, but in the end show dialog box SAVE AS . Is it possible to help FOR not show dialog box , but save AS the file directly IN "C:\Users\LABTOP2\Desktop\end_of_ the_merger.docx"
not use the sendkeys Greetings to all Attachment work files Code:
Private Sub COMM1_Click()
Dim objWord As Word.Application
Dim Doc As Word.Document
Dim sDBPath As String
Set objWord = CreateObject("Word.Application")
objWord.Visible = False 'True
Set Doc = objWord.Documents.Open(Application.CurrentProject. Path & "\WORD" & ".DOCX")
With Doc.MailMerge
.MainDocumentType = wdFormLetters
sDBPath = Application.CurrentProject.Path & "\DATA1" & ".XLS"
.OpenDataSource Name:=sDBPath, _
SQLStatement:="SELECT * FROM `wordqur1$`"
End With
With Doc
.MailMerge.Destination = wdSendToNewDocument
.MailMerge.Execute Pause:=False
End With
Doc.Saved = True
objWord.Quit
Set Doc = Nothing
Set objWord = Nothing
End Sub
Last edited by macropod; 08-23-2014 at 03:00 AM. Reason: Added code tags & formatting |
|
#2
|
||||
|
||||
|
There are code examples of how to do that near the bottom of this thread: https://www.msofficeforums.com/mail-...ps-tricks.html
__________________
Cheers, Paul Edstein [Fmr MS MVP - Word] |
|
#3
|
|||
|
|||
|
Thank you very much macropod YOU help me a lot
The best way I found , is forcing the user to closing ALL WORD Documents before making action . If there is another way, TO NOT be THE user forcing the closing ALL WORD Documents TO BE better else the problem was solved . I repeat my thanks to you and TO the members Greetings to all Code:
Private Sub COMM1_Click()
Dim objWord As Word.Application
Dim doc, Target As Word.Document
Dim sDBPath As String
On Error Resume Next
Set objWord = GetObject(, "Word.Application")
On Error Goto 0
If Not objWord Is Nothing Then
MsgBox "one or more Word file is open ... Please closing the all Word documents before executing this action"
Exit Sub
End If
Set objWord = CreateObject("Word.Application")
objWord.Visible = False 'True
Set doc = objWord.Documents.Open(Application.CurrentProject. Path & "\WORD" & ".DOCX")
With doc.MailMerge
.MainDocumentType = wdFormLetters
sDBPath = Application.CurrentProject.Path & "\DATA1" & ".XLS"
.OpenDataSource Name:=sDBPath, _
SQLStatement:="SELECT * FROM `wordqur1$`"
End With
With doc
.MailMerge.Destination = wdSendToNewDocument
.MailMerge.Execute Pause:=False
With objWord.ActiveDocument
.SaveAs FileName:="C:\Users\TARIQ-LABTOP2\Desktop\rrrrrrrrrrrr.docx", FileFormat:=wdFormatXMLDocument, AddToRecentFiles:=False
' and/or:
.Close SaveChanges:=False
End With
End With
doc.Saved = True
objWord.Quit
Set doc = Nothing
Set objWord = Nothing
MsgBox "Successfully complete a mail merge"
End Sub
Last edited by macropod; 08-23-2014 at 03:04 AM. Reason: Added code tags & formatting |
|
#4
|
||||
|
||||
|
Quote:
For an example of the former, see: https://www.msofficeforums.com/word-...variables.html For an example of the latter, see: https://www.msofficeforums.com/word-...e-ms-word.html
__________________
Cheers, Paul Edstein [Fmr MS MVP - Word] |
|
|
|
Similar Threads
|
||||
| Thread | Thread Starter | Forum | Replies | Last Post |
| Application.Dialogs - Show mail merge 'Select Recipients" dialogs | Cosmo | Word VBA | 0 | 10-08-2013 07:58 AM |
How to Use Mail Merge with conditions to show some features
|
raiya | Mail Merge | 11 | 10-16-2012 11:04 PM |
Mail Merge Fields Show Up As Track Changes When its Turned Off
|
zoysiaspp | Mail Merge | 1 | 09-28-2012 08:23 PM |
show dialog box
|
rutica | Mail Merge | 1 | 06-02-2009 10:25 AM |
| opening mail attachment dialog box | jeffcravener | Outlook | 0 | 06-28-2006 07:19 AM |