Pilotage Word via Excel suppression des alertes et bugs

  • Initiateur de la discussion Initiateur de la discussion deca
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

deca

XLDnaute Nouveau
Bonjour à tous.
J'ai fait une macro "Publipostage" avec Signet.
Elle est à deux doigts de tourner, mais elle ne tourne pas correctement.
J'ai 2 soucis.
Lors du premier balayage, l'appli word me demande si je veux imprimer malgré les zones d'impression en dehors des zones...
J'aimerais qu'il ne m'affiche pas ce message d'alerte.
D'ailleurs j'y ai mis un bout de code
Code:
Application.DisplayAlerts = wdAlertsNone
à ce propos, mais il est sans effet, pourquoi ?

Le second problème, est que ça plante une fois le premier document imprimé, j'imagine que j'utilise mal les ouvertures et fermeture de programme.
Une âme charitable pourrait elle m'aider ou m'orienter ?

Merci.

Ci joint le code complet :

Code:
Private Sub CommandButton_OK_Click()
    
    
    Dim WordDoc As Object
    Dim WordDoc2 As Object
    Dim WordApp As Object
    Dim Texte As String
    Dim NomWord As String, NomWord2 As String
    Dim NomExcel As String, Ligne As Long, Chemin As String
    

    ' Ligne de départ des données du fichier Excel est 5
    Ligne = 5
    
    Chemin = Me.TextBox_Chemin & "\"
    NomExcel = Me.TextBox_Nom_Excel
    NomWord = Me.TextBox_Nom_Word
    Windows(NomExcel).Activate
    Set WordApp = CreateObject("Word.Application")
    Set WordDoc = GetObject(Chemin & NomWord)

    Do While Cells(Ligne, 1) <> ""
    
        Texte = Cells(Ligne, 1) & " " & Cells(Ligne, 2) & " " & Cells(Ligne, 3) & " " & Cells(Ligne, 4) & " " & Cells(Ligne, 5)
        
        
        
        WordDoc.Bookmarks("texte").Range.Text = Texte
        WordApp.DisplayAlerts = wdAlertsNone
        WordDoc.PrintOut
        
        WordDoc.Close SaveChanges:=wdDoNotSaveChanges    'Ferme le doc actif sans l'enregistrer
         
        
        'WordApp.Documents.Open Filename:=Chemin & NomWord

        'Set WordDoc = GetObject(Chemin & NomWord)
        Set WordDoc = WordApp.Documents.Open(Chemin & NomWord, ReadOnly:=True)
        
        Ligne = Ligne + 1
        
    Loop
    
    UserForm_PubliWord.Hide
    Set WordApp = Nothing
    Set WordDoc = Nothing
    WordApp.Application.Quit
    End


End Sub
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Réponses
2
Affichages
511
Retour