Avatar billede Kodelærlingen Juniormester
15. december 2014 - 21:17 Der er 7 kommentarer og
1 løsning

Brevfletning: dansk og engelsk formatering

Hej
Jeg har et dokument som består af et dansk og engelsk afsnit. Hvordan brevfletter jeg dokumentet, således at datoer og beløb bliver formateret på henholdsvis dansk og engelsk?
Avatar billede Kodelærlingen Juniormester
16. december 2014 - 13:06 #1
Jeg kan godt formatere tal efter dansk talformat:

{ MERGEFIELD "Beløb"\# "#.##0,00" }

Hvad gør jeg, hvis jeg vil anvende engelsk talformat i den del af mit dokument, som står på engelsk?

Eksempler på dansk og engelsk talformat:
Dansk talformat
5.392,00

Engelsk talformat
5,392.00
Avatar billede Kodelærlingen Juniormester
18. december 2014 - 21:31 #2
Nogle bud på, hvordan man kan arbejde med dansk og engelsk talformatering i brevfletning?
Avatar billede Lene Fredborg Ekspert
20. december 2014 - 15:23 #3
Du kan styre datoer ved at sikre, at sprogindstillingen på de enkelte afsnit i teksten er korrekt i forhold til det skrevne sprog og desuden opbygge dato-flettefelterne med korrekt syntaks for det enkelt sprog. Word skriver månedsnavne korrekt på det indstillede sprog.

Eksempel på flettefelt "Date" med dansk format:
{ MERGEFIELD "Date" \@ "d. MMMM yyyy" }
Eksempel på resultat:
20. december 2014

Eksempel på flettefelt "Date" med engelsk (US) format:
{ MERGEFIELD "Date" \@ "MMMM dd, yyyy" }
Eksempel på resultat:
December 20, 2014

Mht. formatering af tal:
Jeg tror, du er nødt til i første omgang at formatere alle tal på dansk og udskifte punktum/komma i de engelske tal efter fletning (hvis regionale indstillinger er sat til Danmark). Word bruger de regionale indstillinger, når programmet afgør, om et tegn er decimaltegn eller tusindtalsseparator. Der kan kun være en indstilling for dette ad gangen. Med regionale indstillinger sat til Danmark er standardindstillingerne komma = decimaltegn og punktum = tusindtalsseparator.

En feltkode som denne:
{ MERGEFIELD "Number" \# .0,00}
vil vise tallet
12345
som
12.345,00
hvilket er korrekt dansk formatering

Men hvis du i samme dokument prøver at lave feltkoden omvendt mht. punktum og komma:
{ MERGEFIELD "Number" \# ,0.00}
vil tallet
12345
blive vist som
,000
da det første tegn (komma) i feltkoden tolkes som decimaltegn - det efterfølgende tegn (punktum) ignoreres

Det vil være muligt at bruge Søg og erstat (eller programmere en makro) til ombytningen, hvis der er mange tal, som skal rettes (vil kræve noget at få det til at virke korrekt, så der f.eks. ikke ændres kommaer/punktummer andre steder end ønsket).
Avatar billede Kodelærlingen Juniormester
20. december 2014 - 21:51 #4
Så det du reelt siger er, at den engelske talformatering skal ske i datagrundlaget (min Excel fil, som jeg brevfletter op i mod)?

Kan man formatere tallene i Excel, så det både understøtter dansk og engelsk talformat? Og så derefter hente disse tal over i Word, hvor jeg kører min brevfletningen? Skal jeg i gang med noget VBA-kode for at kunne løse førnævnte?

Skal tallene ikke også været formateret som tekst, for at kunne hente dem over i Word under brevfletningen (så formateringen sker i Excel og derved ikke skal yderligere formateres i Word)?
Avatar billede Lene Fredborg Ekspert
21. december 2014 - 00:02 #5
Avatar billede Kodelærlingen Juniormester
25. december 2014 - 20:24 #6
Mange tak for svar. Det tyder på, at der ingen let løsningen er på denne problemstilling. Jeg prøver at få den løst vha. af noget vba-kode.
Avatar billede Kodelærlingen Juniormester
26. januar 2015 - 13:44 #7
Tak for afklaringen. Hvis du vil have point, så oprettet lige et svar.
Avatar billede Lene Fredborg Ekspert
26. januar 2015 - 14:41 #8
Velbekomme.
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester