Commutateur Date Publipostage maison

Résolu
matthouge Messages postés 3 Date d'inscription   Statut Membre Dernière intervention   -  
 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 ???

3 réponses

  1. Utilisateur anonyme
     
    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.
    0
  2. matthouge Messages postés 3 Date d'inscription   Statut Membre Dernière intervention  
     
    Bonjour,
    un grand merci pour cette idée de passer les champ date en TEXTE dès Excel ; super merci j'ai terminé mon mailing hier.
    Merci encore
    0