Feltformat ved brevfletning
Når man laver
brevfletning i Word med data fra eksterne datakilder, skal man være opmærksom
på, at det kun er de ”rå” data, der flettes med. Formatering udført i
Access-tabellen eller Excel regnearket, vil ikke blive overført. Er tallet 1234
fx vist som 1234,00 i Excel, vil det stå som 1234 efter fletningen. Det samme
gælder datoer, der selv om de er indtastes som fx 23-02-09, efter en fletning
vil blive vist i Words interne format, altså 2/23/09. Der er to muligheder for
at løse dette problem. Den ene er at formatere sine data i Word, efter at de er
hentet over (det gør man i praksis ved på forhånd at formatere flettefelterne,
se nedenfor). Den anden er at ændre opsætningen på Word, så den ”tvinger” Excel
til at bruge en ældre variant af brevfletningsmetodikken.
Formatering
af felter i Word
Når et
flettefelt er sat ind I Word, ses det som fx «Løn», altså feltnavnet skrevet
inde i "danske" anførselstegn. Når feltet er sat ind det muligt at højreklikke
på det, og vælge Feltkoder til/fra. Nu ses feltet som noget i denne stil: {MERGEFIELD
"Løn"}. Mens feltet er vist på denne måde er det muligt at redigere i det, fx
for at formatere det. Vær opmærksom på, at der SKAL være en et mellemrum mellem
{ og indholdet og mellem indholdet og }.
Ret nu feltet
til
{ MERGEFIELD
"Løn" \# "0,00" }
og skjul igen
feltkoden. Skal du også have tusindadskiller, skal feltet se således ud:
{ MERGEFIELD
"Løn" \# "#.###0,00" }.
Er det en
dato, der returneres som 2/23/09, kan du ændre feltets udseende til
{ MERGEFIELD
"Dato" \@ "dd-MM-yy" }.
Vær opmærksom
på, at år formateres med "yy" ikke med "åå", og at måned skal skrives med stort
M, ellers tror Word, der menes minut. Prøv selv at eksperimentere med varianter
af "d", "dd", "ddd", "dddd" "M", "MM", "MMM" og "MMMM", "yy" samt "yyyy". "-"
kan erstattes med punktum osv. Ved at indsætte det samme fletfelt flere gange
kan man opnå næsten alle de formater, man vil. Indsæt fx først fletfeltet
{ MERGEFIELD
"Dato" \@ "dddd 'd.'" \* firstcap } (Bemærk ' omkring 'd.')
og dernæst
fletfeltet
{ MERGEFIELD
"Dato" \@ "d. MMMM, yyyy" }.
Begge felter
skal stå på samme linje. Det skulle gerne give dette resultat i dokumentet:
Mandag d. 23.
februar, 2009.
NB! Det kan
være nødvendigt at opdatere felterne før ændringer i feltformater "slår
igennem". Højreklik på et felt og vælg Opdater felt, for at opdatere.
Desværre er
formateringsmulighederne ikke særligt godt dokumenteret i hjælpefunktionen i
Word, og noget af hjælpen er direkte forkert. For at få første bogstav med
stort, skal man skrive Firstcap, som i eksemplet her, ikke Førstestort som
hjælpen siger. Alle store bogstaver hedder Upper, ikke Stortbogstav og så
fremdeles.
DDE i
stedet for OLE
Problemerne
opstod, da Microsoft skiftede fra brevfletning via Dynamic Data Exchange (DDE,
Word 2000 og tidligere) til brevfletning via Object Linking and Embedding (OLE,
Word 2002 og senere). OLE overfører kun de rå data, ikke de formaterede, som DDE
gjorde. Det er årsagen til, at man er nødt til at formatere "igen" i Word, selv
om der allerede er formateret i Excel eller Access. Imidlertid kan man "tvinge"
Word til at bruge den "gamle" metode.
Under
Funktioner – Indstillinger vælges fanebladet Generelt. Her sættes flueben i
"Bekræft konvertering ved åbning". Dette skal ske inden den eksterne fil bindes
sammen med dokumentet, altså inden der vælges modtagerliste. Når man så vælger
modtagerlisten vises en dalogboks. I denne vælges Microsoft Excel-regneark
via DDE (eller en tilsvarende DDE funktion, hvis kilden ikke er et
regneark). Nu kan man fortsætte brevfletningen på almindelig vis, og formatet
hentes nu med over fra kilden til Word.
"Bagdelen"
ved denne løsning er, at det ikke er alle formater, som man kunne ønske i Word,
der kan dannes i kilden, fx Excel. Desuden kan denne metode kun lave
brevfletning, hvis kildes står i første ark i projektmappen.
NB! Det er
selvfølgelig stadig muligt at formatere felterne i Word, også ved denne metode,
men så går lidt af "fidusen" af.
- Til top -
- Retur til Word -
|