Bonjour,
je viens à vous car je suis bloqué pour une des étapes de mon publipostage ...
le code suivant fonctionne très bien, je veux juste l'améliorer afin de m'éviter la suppression de feuilles après le publipostage effectué.
le texte en gras est celui que je dois modifier.
il ne faudrait pas que tous les enregistrements soient pris en compte, mais seulement ceux répondant à une condition.
malgré mes recherches, je ne trouve pas mon bonheur.
merci d'avance.
je viens à vous car je suis bloqué pour une des étapes de mon publipostage ...
le code suivant fonctionne très bien, je veux juste l'améliorer afin de m'éviter la suppression de feuilles après le publipostage effectué.
le texte en gras est celui que je dois modifier.
il ne faudrait pas que tous les enregistrements soient pris en compte, mais seulement ceux répondant à une condition.
malgré mes recherches, je ne trouve pas mon bonheur.
'------------------------------------------------------------------------------
'------------------------------------------------------------------------------
'Fonction publipostage
'------------------------------------------------------------------------------
'------------------------------------------------------------------------------
Sub publipostage()
'Remplissage des variables
remplir_variables
test_publi_coche
NomModele = modele & Extension
NomDocPubli = modele & ExtensionPubli
NomPubli = Format(Now(), "yyyymmdd") & "_NP_" & CodeAttest & "_" & NomDocPubli
NDFPubli = rep & NomPubli
Application.ScreenUpdating = False
Set appWord = New Word.Application
appWord.Visible = True
'Ouverture du document principal Word
Set docWord = appWord.Documents.Open(RepModeles & "\" & NomModele)
'fonctionnalité de publipostage pour le document spécifié
With docWord.mailMerge
'Ouvre la base de données
.OpenDataSource Name:=NomBase, _
LinkToSource:=True, _
Format:=wdOpenFormatAuto, _
SQLStatement:="SELECT * FROM `" & FeuilleDonnees & "$`"
'Spécifie la fusion vers le fichier
'ne fonctionne qu'à pertir d'office 2013
'.suppressBlankLines = True
.Destination = wdSendToNewDocument
'Prend en compte l'ensemble des enregistrements
With .DataSource
.firstRecord = wdDefaultFirstRecord
.lastRecord = derligne
End With
'Exécute l'opération de publipostage
.Execute Pause:=False
End With
'enregistre le document avec le nom prédéfini
docWord.Application.ActiveDocument.SaveAs NDFPubli
Application.ScreenUpdating = True
'Fermeture du document Word
docWord.Close False
appWord.Quit
Set docWord = Nothing
Set appWord = Nothing
'appel l'userform
UserFormPubli.Show
End Sub
'------------------------------------------------------------------------------
'------------------------------------------------------------------------------
'Fin Fonction publipostage
'------------------------------------------------------------------------------
'------------------------------------------------------------------------------
merci d'avance.