mail merge, lang veld verdelen over 2 lijnen

Status
Niet open voor verdere reacties.

rocknroadie

Gebruiker
Lid geworden
5 sep 2016
Berichten
184
ik heb een word document waar ik de adresgegevens via vba uit een gekoppelde exceltabel ga halen met d evolgende code:

Code:
Private Sub Document_Open()
    ActiveDocument.MailMerge.MainDocumentType = wdFormLetters
    ActiveDocument.MailMerge.OpenDataSource Name:= _
        "\\disk1\blabla\11\Parken\parken.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=\\disk1\blabla\11\Parken\parken.xlsm;Mode=Read;Extended Properties=""HDR=YES;IMEX=1;"";Jet OLEDB:System database="""";Jet OLEDB:Registry Path="""";Jet OLEDB:Engine Type=35" _
        , SQLStatement:="SELECT * FROM `'gegevens voor word$'`", SQLStatement1:= _
        "", SubType:=wdMergeSubTypeAccess
    With ActiveDocument.MailMerge
        .Destination = wdSendToNewDocument
        .SuppressBlankLines = True
        With .DataSource
            .FirstRecord = ActiveDocument.MailMerge.DataSource.ActiveRecord
            .LastRecord = ActiveDocument.MailMerge.DataSource.ActiveRecord
        End With
        .Execute Pause:=False
    End With
    Word.Application.Visible = True
    Word.ActiveWindow.WindowState = wdWindowStateMaximize
End Sub

nu is het probleem dat sommige adres gegevens net iets te lang zijn (de brieven worden in vensterenveloppes gestoken) en er dus een stuk op een nieuwe lijn moet gezet worden ALS de naam te lang is.

hoe kan ik dit doen?

alvast bedankt

Marc
 
Laatst bewerkt:
Als je de laatste code nog even aanpast ([/code] i.p.v.
Code:
) dan werkt de tag beter :).
 
Oh ja, nog antwoord op je vraag :). Daar is de code uiteraard niet voor nodig, want dat is gewoon een tekstprobleempje dat je kunt oplossen door de adresblokken in een tabel te zetten. Dat is zo'n beetje de meest gebruikte en gebruikelijke oplossing.
 
danku OctaFish

de adresblokken staan al in een tabel

een van de namen is bvb

Aan de Rechtbank van eerste aanleg West-Vlaanderen afdeling Brugge

deze is dus te lang en moet op een of andere manier verdeeld worden over 2 lijnen.....
 
Laatst bewerkt:
Staat je tabel wel goed ingesteld? Laten we één ding alvast duidelijk maken: het kan absoluut niet met een veldinstellingen worden opgelost. Je moet het dus echt in een tabel, of een tekstvak regelen. Ik heb nog nooit anders meegemaakt dat een veld gewoon afbreekt binnen een tabel. Ik kan het dus ook niet reproduceren. Als dat bij jou niet gebeurt, wil ik je document dus wel eens zien.
 
ik heb het kunnen oplossen door in de tabel de kolom met de langere namen, de inhoud te gaan splitsen met behulp van een ;

dus de inhoud is geworden "Aan de Rechtbank van eerste aanleg West-Vlaanderen ; afdeling Brugge"
vervolgens heb ik de cel "gesplitst " via tekst naar kolommen.
in mijn mailmarge heb ik een extra veld voorzien dat naar de tweede (gesplitste) cel verwijst. als de naam niet te lang is heb ik dus gewoon een witruimte en anders wordt alles mooi op een rijtje gezet.

bedankt voor de voorzetten! ik heb weeral veel bijgeleerd!
 
En dan te bedenken dat niets van dit alles dus nodig is om het goed te krijgen, zoals ik al in mijn vorige bericht aangaf; Word doet dat gewoon goed uit zichzelf :). Had je een documentje gepost, dan hadden we het kunnen bekijken, want als iets goed werkt, en bij jou niet, dan is dat uiteraard op te lossen en waarschijnlijk op een makkelijke manier. Maar goed, de moeilijkste weg is natuurlijk ook prima als je op het goede punt uitkomt. Jij bepaalt de route, niet ik :D.
 
octa, ik haal de gegevens uit een excel tabel. ik heb de inhoud van de cel in excel "bewerkt" zoals hierboven beschreven.

ik weet dat de weg die ik bewandel niet altijd de gemakkelijkste is maar voor mij is het belangrijkste dat ik er geraak. ik probeer zo veel mogelijk zelf te doen...

bedankt voor alle hulp!
 
Nogmaals: als jouw oplossing naar jouw tevredenheid werkt, dan is dat prima. Maar weet dat het echt een stuk makkelijker kan. Daar heb je nu dan wellicht niks aan, maar een volgende keer wel :).
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan