Erik191283
Gebruiker
- Lid geworden
- 13 mei 2015
- Berichten
- 49
Goedemiddag,
Ik heb een word document gemaakt met samenvoegvelden en deze gekoppeld aan een excel bestand. Tot zover werkt alles goed. Als ik het word document met de hand open komt daar de melding op dat er een SQL-opdracht wordt uitgevoerd, hier moet ik "ja" op antwoorden en dan wordt het document automatisch bijgewerkt met de gegevens die in het excelbestand staan. Vervolgens kan ik met de hand het document samenvoegen en daarmee een nieuw document aanmaken.
Omdat ik de kans zo klein mogelijk wil hebben dat iemand per ongeluk in het word document gaat wijzigen heb ik geprobeerd (met behulp van Chatgpt) om bovenstaande te automatiseren. Ik krijg dan de volgende VBA code:
Probleem is nu alleen dat het document niet bijgewerkt wordt met de info die in Excel is gewijzigd. Het lijkt er op dat er bij het keuze schermpje met de SQL vraag een soort automatisch op "nee" wordt geklikt, geen idee of dat ook zo is of dat het probleem ergens anders in zit, maar heeft iemand een idee wat er mis gaat?
Ik heb een word document gemaakt met samenvoegvelden en deze gekoppeld aan een excel bestand. Tot zover werkt alles goed. Als ik het word document met de hand open komt daar de melding op dat er een SQL-opdracht wordt uitgevoerd, hier moet ik "ja" op antwoorden en dan wordt het document automatisch bijgewerkt met de gegevens die in het excelbestand staan. Vervolgens kan ik met de hand het document samenvoegen en daarmee een nieuw document aanmaken.
Omdat ik de kans zo klein mogelijk wil hebben dat iemand per ongeluk in het word document gaat wijzigen heb ik geprobeerd (met behulp van Chatgpt) om bovenstaande te automatiseren. Ik krijg dan de volgende VBA code:
Code:
Sub SamenvoegenNaarWord()
Dim wdApp As Object
Dim wdDoc As Object
Dim docPath As String
Dim fileName As String
' Opslaan van het Excel-bestand voordat het macro wordt uitgevoerd
ThisWorkbook.Save
' Pad naar het Word-document
docPath = "H:\Downloads\Model arbeidsovereenkomst.docx"
' Maak een instantie van Word
Set wdApp = CreateObject("Word.Application")
' Zorg ervoor dat Word zichtbaar is (optioneel)
wdApp.Visible = True
' Open het Word-document
Set wdDoc = wdApp.Documents.Open(docPath)
' Sla het samengevoegde Word-document op met aangepaste naam
fileName = "arbeidsovereenkomst " & ThisWorkbook.ActiveSheet.Range("B15").Value & " per " & ThisWorkbook.ActiveSheet.Range("B23").Value
wdDoc.SaveAs2 "H:\Downloads\" & fileName & ".docx"
' Sluit het Word-document
wdDoc.Close SaveChanges:=False
' Sluit Word af
wdApp.Quit
' Wis de objectvariabelen
Set wdDoc = Nothing
Set wdApp = Nothing
MsgBox "Het Word-document is samengevoegd en opgeslagen als " & fileName & ".docx."
End Sub
Probleem is nu alleen dat het document niet bijgewerkt wordt met de info die in Excel is gewijzigd. Het lijkt er op dat er bij het keuze schermpje met de SQL vraag een soort automatisch op "nee" wordt geklikt, geen idee of dat ook zo is of dat het probleem ergens anders in zit, maar heeft iemand een idee wat er mis gaat?