[WD-2003] Macro de publipostage + filtre / WHERE
abyssin87
Messages postés
40
Statut
Membre
-
abyssin87 Messages postés 40 Statut Membre -
abyssin87 Messages postés 40 Statut Membre -
Bonjour,
J'ai des difficultés avec une macro VBA qui commande un publipostage.
Celle-ci lit un fichier xls et fait un publipostage dans Word.
Cela fonctionne bien sauf lorsque j'essaie de filtrer les données, pour ne prendre que les lignes ayant pour valeur de première colonne la chaîne "cfanrpwepvt" par exemple
Je pensais manipuler les données affichées dans le xls avec un filtre
mais le publipostage prend quand même toutes les lignes.
J'ai alors essayer de supprimer toutes les lignes sauf les bonnes dans Sheets(1), mais j'ai le même résultat, même en faisant un .save juste avant
J'ai aussi pensé à modifier le SQLStatement du DataSource :
en mettant un
en manipulant un peu les quotes et le $ pour tenter d'avoir un truc correct mais à chaque fois j'ai une fenêtre qui s'ouvre pour sélectionner une table (syntaxe incorrecte donc?)
Quelqu'un saurait m'éclairer sur ceci?
Je vous remercie par avance pour vos réponses !
J'ai des difficultés avec une macro VBA qui commande un publipostage.
Celle-ci lit un fichier xls et fait un publipostage dans Word.
Cela fonctionne bien sauf lorsque j'essaie de filtrer les données, pour ne prendre que les lignes ayant pour valeur de première colonne la chaîne "cfanrpwepvt" par exemple
Je pensais manipuler les données affichées dans le xls avec un filtre
Wb.Sheets(1).Range("A1").AutoFilter Field:=1, Criteria1:="cfanrpwepvt"
mais le publipostage prend quand même toutes les lignes.
J'ai alors essayer de supprimer toutes les lignes sauf les bonnes dans Sheets(1), mais j'ai le même résultat, même en faisant un .save juste avant
J'ai aussi pensé à modifier le SQLStatement du DataSource :
ActiveDocument.MailMerge.OpenDataSource Name:= _
FichierSource, _
ConfirmConversions:=False, ReadOnly:=False, LinkToSource:=True, _
AddToRecentFiles:=False, PasswordDocument:="", PasswordTemplate:="", _
WritePasswordDocument:="", WritePasswordTemplate:="", Revert:=False, _
Format:=wdOpenFormatAuto, Connection:= _
"Provider=Microsoft.Jet.OLEDB.4.0;Password="""";User ID=Admin;Data Source=" + FichierSource + ";Mode=Read;Extended Properties=""HDR=YES;IMEX=1;"";Jet OLEDB:System database="""";Jet OLEDB:Registry Path="""";Jet OLEDB:Dat" _
, SQLStatement:="SELECT * FROM 'Feuil1$'", SQLStatement1:="", SubType:= _
wdMergeSubTypeAccess
en mettant un
SQLStatement:="SELECT * FROM 'Feuil1$' WHERE 'CodMacro'='cfarp'"
en manipulant un peu les quotes et le $ pour tenter d'avoir un truc correct mais à chaque fois j'ai une fenêtre qui s'ouvre pour sélectionner une table (syntaxe incorrecte donc?)
Quelqu'un saurait m'éclairer sur ceci?
Je vous remercie par avance pour vos réponses !
A voir également:
- [WD-2003] Macro de publipostage + filtre / WHERE
- Photo filtre 7 gratuit - Télécharger - Retouche d'image
- Publipostage mail - Accueil - Word
- Telecharger macro convertir chiffre en lettre excel - Télécharger - Tableur
- Filtre whatsapp - Accueil - Messagerie instantanée
- Where is it - Télécharger - Gestion de fichiers