Commutateur Date Publipostage maison
Résolu
matthouge
Messages postés
3
Date d'inscription
Statut
Membre
Dernière intervention
-
Rancis -
Rancis -
bonjour,
j'ai le même soucis que dans le forum :
https://forums.commentcamarche.net/forum/affich-2499864-publipostage-date-en-anglais-comment-l-inverser#p24946567
qui est de convertir une date de mm/jj/aa vers jj/mm/aa dans un publipostage sous word 2010 avec oledb mais dans mon cas, la date à convertir n'est pas un simple champ mergefield mais elle est intégrée dans un tableau que j'insère dans chaque courrier fusionné.
car je me set de 2 base de données derriere le modele word
la technique est celle ci :
https://faqword.com/index.php/word-tutoriels/toutes-versions/416-publipostage-conditionnel-maison.html
çà m'insère donc un champ tel que celui ci :
{DATABASE \d "C:\\Users\\MOI\\Desktop\\ZONE\\Classeur1.xlsx" \c "Provider=Microsoft.ACE.OLEDB.12.0;User ID=Admin;Data Source=C:\\Users\\MOI\\Desktop\\ZONE\\Classeur1.xlsx;Mode=Read;Extended Properties=\"HDR=YES;IMEX=1;\";Jet OLEDB:System database=\"\";Jet OLEDB:Registry Path=\"\";Jet OLEDB:Engine Type=37;Jet OLEDB:Database Locking Mode=0;Jet OLEDB:Global Partial Bulk Ops=2;Jet OLEDB:Global Bulk Transactions=1;Jet OLEDB:New Database Password=\"\";Jet OLEDB:Create System Database=False;Jet OLEDB:Encrypt Database=False;Jet OLEDB:Don't Copy Locale on Compact=False;Jet OLEDB:Compact Without Replica Repair=False;Jet OLEDB:SFP=False;Jet OLEDB:Support Complex Data=False;Jet OLEDB:Bypass UserInfo Validation=False" \s "SELECT 'prestation', 'effet', 'fin', 'montant' FROM 'PRESTA' WHERE (('aide' = { MERGEFIELD NUMERO_AIDE}))" \l "16" \b "191" \h}
J'ai donc essayé (j'ai tenté ma chance) d'insérer le commutateur ainsi :
\s "SELECT 'prestation', 'effet' \@ "d MMMM yyyy", ...
mais çà plante.
Zavez une idée ???
j'ai le même soucis que dans le forum :
https://forums.commentcamarche.net/forum/affich-2499864-publipostage-date-en-anglais-comment-l-inverser#p24946567
qui est de convertir une date de mm/jj/aa vers jj/mm/aa dans un publipostage sous word 2010 avec oledb mais dans mon cas, la date à convertir n'est pas un simple champ mergefield mais elle est intégrée dans un tableau que j'insère dans chaque courrier fusionné.
car je me set de 2 base de données derriere le modele word
la technique est celle ci :
https://faqword.com/index.php/word-tutoriels/toutes-versions/416-publipostage-conditionnel-maison.html
çà m'insère donc un champ tel que celui ci :
{DATABASE \d "C:\\Users\\MOI\\Desktop\\ZONE\\Classeur1.xlsx" \c "Provider=Microsoft.ACE.OLEDB.12.0;User ID=Admin;Data Source=C:\\Users\\MOI\\Desktop\\ZONE\\Classeur1.xlsx;Mode=Read;Extended Properties=\"HDR=YES;IMEX=1;\";Jet OLEDB:System database=\"\";Jet OLEDB:Registry Path=\"\";Jet OLEDB:Engine Type=37;Jet OLEDB:Database Locking Mode=0;Jet OLEDB:Global Partial Bulk Ops=2;Jet OLEDB:Global Bulk Transactions=1;Jet OLEDB:New Database Password=\"\";Jet OLEDB:Create System Database=False;Jet OLEDB:Encrypt Database=False;Jet OLEDB:Don't Copy Locale on Compact=False;Jet OLEDB:Compact Without Replica Repair=False;Jet OLEDB:SFP=False;Jet OLEDB:Support Complex Data=False;Jet OLEDB:Bypass UserInfo Validation=False" \s "SELECT 'prestation', 'effet', 'fin', 'montant' FROM 'PRESTA' WHERE (('aide' = { MERGEFIELD NUMERO_AIDE}))" \l "16" \b "191" \h}
J'ai donc essayé (j'ai tenté ma chance) d'insérer le commutateur ainsi :
\s "SELECT 'prestation', 'effet' \@ "d MMMM yyyy", ...
mais çà plante.
Zavez une idée ???
A voir également:
- Commutateur Date Publipostage maison
- Google maps localisation maison - Guide
- Publipostage mail - Accueil - Word
- Engrais pour fraisier fait maison - Guide
- Schéma installation rj45 maison ✓ - Forum Fibre Optique
- Logiciel plan maison gratuit facile - Guide
3 réponses
Bonsoir Matthouge
Comme l'accès avec OLEDB remonte la date au format américain, et qu'avec le champ DATABASE, le passage en DDE et le commutateur coincent, le problème a chaque fois été contourné avec succès en formatant la date en texte à la source dans le fichier excel.
Si ta date est actuellement en C : tu peux créer une 2e colonne 'EffetTexte' avec cette formule =TEXTE(C2;"jj/mm/aaaa") à tirer sur tout le champ.
Puis dans le champ DATABASE, tu pointes sur EffetTexte au lieu de Effet.
Comme l'accès avec OLEDB remonte la date au format américain, et qu'avec le champ DATABASE, le passage en DDE et le commutateur coincent, le problème a chaque fois été contourné avec succès en formatant la date en texte à la source dans le fichier excel.
Si ta date est actuellement en C : tu peux créer une 2e colonne 'EffetTexte' avec cette formule =TEXTE(C2;"jj/mm/aaaa") à tirer sur tout le champ.
Puis dans le champ DATABASE, tu pointes sur EffetTexte au lieu de Effet.