Empfänger auswählen per vba

Informationen und Beispiele zu den hier genannten Dialog-Elementen:
MsgBox
Bild

Betrifft: Empfänger auswählen per vba
von: Peter
Geschrieben am: 26.07.2015 12:07:44

Hallo, einen schönen Tag.
Ich bitte Euch um Hilfe.
Ich möchte mit Word 2013 einen Serienbrief öffnen, bei welchem beim Öffnen per Makro
der Empfänger aus einer bestehenden Liste ausgewählt wird.
Habe mir folgendes Makro aufgezeichnt:

Sub Makro_Empfänger_auswählen()
'
' Makro_Empfänger_auswählen Makro
'
'
    ActiveDocument.MailMerge.OpenDataSource Name:= _
        "C:\Users\Peter\Desktop\Test1\Mappe_SVerweis_Mehrere_Treffer_25.07.2015.xlsm", _
        ConfirmConversions:=False, ReadOnly:=False, LinkToSource:=True, _
        AddToRecentFiles:=False, PasswordDocument:="", PasswordTemplate:="", _
        WritePasswordDocument:="", WritePasswordTemplate:="", Revert:=False, _
        Format:=wdOpenFormatAuto, Connection:= _
        "Provider=Microsoft.ACE.OLEDB.12.0;User ID=Admin;Data Source=C:\Users\Peter\Desktop\ _
Test1\Mappe_SVerweis_Mehrere_Treffer25.07.2015.xlsm;Mode=Read;Extended Properties=""HDR=YES;IMEX=1;"";Jet OLEDB:System database="""";Jet OLEDB:Registry Path="""";Jet OLEDB:Engine Type=37;J" _
        , SQLStatement:="SELECT * FROM `Tabelle1$`", SQLStatement1:="", SubType:= _
        wdMergeSubTypeAccess
End Sub

Jetzt möchte ich aber, da sich der Name der Datei bezüglich dem Datum ändert, dass automatisch die entsprechende Datei ausgewählt wird, welche in dem Verzeichnis "Test1" steht. In diesem Verzeichnis steht immer nur eine Datei mit gleichem Namen jeweils anderem Datum am Ende.
Danke für Eure Hilfe.
Gruss Peter

Bild

Betrifft: AW: Empfänger auswählen per vba
von: Michael
Geschrieben am: 26.07.2015 17:24:32
Hi Peter,
probier mal folgendes Makro:

Sub test()
Dim datum As String, tabelle As String
datum = Format(Now(), "dd.mm.yyyy")
MsgBox datum
tabelle = "C:\Users\Peter\Desktop\Test1\Mappe_SVerweis_Mehrere_Treffer_" & datum & ".xlsm"
MsgBox tabelle
End Sub
So ermittelst Du das Tagesdatum und fügst es in eine String-Variable, die Du dann entsprechend in Deinen Code einsetzt:
Sub Makro_Empfänger_auswählen()
'
' Makro_Empfänger_auswählen Makro
'
Dim datum As String, tabelle As String
datum = Format(Now(), "dd.mm.yyyy")
'MsgBox datum
tabelle = "C:\Users\Peter\Desktop\Test1\Mappe_SVerweis_Mehrere_Treffer_" & datum & ".xlsm"
'MsgBox tabelle
    ActiveDocument.MailMerge.OpenDataSource Name:= tabelle, _
        ConfirmConversions:=False, ReadOnly:=False, LinkToSource:=True, _

usw.
Übrigens hast Dein Makro in der ersten Pfadangabe einen Unterstrich vor dem Datum, in der zweiten nicht!
Schöne Grüße,
Michael

Bild

Betrifft: Vielen Dank
von: Peter
Geschrieben am: 27.07.2015 07:37:22
Hallo Michael,
besten Dank für Deinen Lösungsvorschlag.
Dieser funktioniert einwandfrei.
Wünsche noch eine schöne Zeit
Gruss Peter

Bild

Betrifft: freut mich, danke für die Rückmeldung owT
von: Michael
Geschrieben am: 29.07.2015 16:51:38


 Bild

Beiträge aus den Excel-Beispielen zum Thema "Empfänger auswählen per vba"