vba Word - aus Access speichern unter

  • Word

Es gibt 4 Antworten in diesem Thema. Der letzte Beitrag () ist von bw2015.

    vba Word - aus Access speichern unter

    Hi,
    aus Access heraus möchte ich ein Formular in Word (2016) erstellen.
    Bis zum Speichern klappt das auch prima.
    Ich möchte folgendes gerne erreichen:
    Wenn ein Ordner mit dem Nachnamen ("Meier") schon existiert, dann soll das erstellte Word-Formular dort unter sDatei ("Meier_AAFormular.docx") gespeichert werden.
    Wenn kein Ordner mit dem Nachnamen ("Meier") existiert, dann soll in strPfad("C:\Formulare\) ein neuer Ordner angelegt und die Datei unter sDatei ("Meier_AAFormular.docx") gespeichert werden.
    _______________________________________________________
    Dim o_NewWord, doc As Object
    Dim strPfad, sDatei, NName As String
    Set o_NewWord = CreateObject("Word.Application")
    o_NewWord.Visible = True
    o_NewWord.Documents.Add
    With o_NewWord.Selection
    'Einrücken 23
    .Font.Name = "Candara"
    .Font.Bold = True
    .Font.Size = 13
    .TypeText Text:= vbTab & "Formular" & vbLf & vbLf
    .TypeText Text:=""......................
    .....
    .....
    strPfad="C:\Formulare\"
    NName= Forms!fm_MA_Daten!Nachname
    sDatei=NName & "_AAFormular.docx"
    _______________________________________________________

    Bin für jede Hilfe dankbar.
    BW
    Von der Logik her ist mir der Aufbau klar:
    Wenn Ordner existiert, dann
    speichere die Datei mit dem Namen soundso in dem Ordner
    andernfalls
    lege einen neuen Ordner an
    und speichere darin die Datei unterdem Namen soundso
    .
    Mir sind allerdings die CreateFolder und FileExits-Methoden nicht wirklich geläufig.
    Wäre schön,wenn jemand das in einen funktionierenden vba-Code übersetzen könnte.

    Visual Basic-Quellcode

    1. Dim fso As Object
    2. Dim WordApp As Object
    3. Dim WordDoc As Object
    4. Dim FolderPath As String
    5. Set fso = CreateObject("Scripting.FileSystemObject")
    6. Set WordApp = CreateObject("Word.Application")
    7. FolderPath = "C:\Formulare\Meier\"
    8. WordApp.Visible = True
    9. Set WordDoc = WordApp.Documents.Add
    10. If fso.FolderExists(FolderPath) Then
    11. WordDoc.SaveAs2 FolderPath & "Meier_AAFormular.docx"
    12. Else
    13. fso.CreateFolder (FolderPath)
    14. WordDoc.SaveAs2 FolderPath & "Meier_AAFormular.docx"
    15. End If

    Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von „cry.baby“ ()