Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

Imprimer avec VBA : Rien ne se passe !

  • Initiateur de la discussion Initiateur de la discussion Alexxpz
  • 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 !

Alexxpz

XLDnaute Nouveau
Bonjour à tous.

J'ai un bouton de maccro sur ma feuille Excel : celui-ci enregistre les données de ma feuille dans un tableau bilan (situé dans une autre feuille du classeur) pour ensuite imprimer ma feuille courante.
Mon problème est que mon bouton marche pour l'enregistrement des données dans le tableau bilan mais pas pour l'impression; qui ne se lance pas. J'ai essayé de mettre le code permettant simplement d'ouvrir la fenêtre d'impression et rien ne se passe non plus.

Voici mon code VBA :
Sub Recap1()

Application.Dialogs(xlDialogPrint).Show

ligne = Sheets("Bilan").Range("A65000").End(xlUp).Row + 1 ' ligne libre


Sheets("Bilan").Cells(ligne, 1) = Cells(20, 1)
Sheets("Bilan").Cells(ligne, 2) = Cells(11, 1)
Sheets("Bilan").Cells(ligne, 3) = Cells(20, 4)
Sheets("Bilan").Cells(ligne, 4) = Cells(20, 5)


End Sub

J'ai essayé pas mal de codes d'impression, aucun ne marche, pourtant ça a l'air de marcher pour tout le monde :/

Cordialement, Alexxpz.
 
Re : Imprimer avec VBA : Rien ne se passe !

Bonjour

Et comme cela?
Code:
Sub Recap1()
Dim ligne as Long
Application.Dialogs(xlDialogPrint).Show
ligne = Sheets("Bilan").Range("A65000").End(xlUp).Row + 1 ' ligne libre
Sheets("Bilan").Cells(ligne, 1) = Sheets("NOMDELAFEUILLE").Cells(20, 1)
Sheets("Bilan").Cells(ligne, 2) = Sheets("NOMDELAFEUILLE").Cells(11, 1)
Sheets("Bilan").Cells(ligne, 3) = Sheets("NOMDELAFEUILLE").Cells(20, 4)
Sheets("Bilan").Cells(ligne, 4) = Sheets("NOMDELAFEUILLE").Cells(20, 5)
End Sub

Remplacer NOMDELAFEUILLE par le nom de la feuille adéquate.

Sinon pour honorer mes endives 😉
Code:
Sub Recap1BIS()
Dim ligne As Long
Application.Dialogs(xlDialogPrint).Show
    With Sheets("Bilan")
        ligne = .Range("A65000").End(xlUp).Row + 1 ' ligne libre
        .Cells(ligne, 1) = Sheets("NOMDELAFEUILLE").Cells(20, 1)
        .Cells(ligne, 2) = Sheets("NOMDELAFEUILLE").Cells(11, 1)
        .Cells(ligne, 3) = Sheets("NOMDELAFEUILLE").Cells(20, 4)
        .Cells(ligne, 4) = Sheets("NOMDELAFEUILLE").Cells(20, 5)
    End With
End Sub
 
Dernière édition:
Re : Imprimer avec VBA : Rien ne se passe !

Non tu n'as pas compris ce que je voulais faire ^^
Regarde en pièce jointe, la feuille que je veux imprimer est "Autorisation" et les informations de cette feuille vont dans la feuille "Bilan" quand on clique sur le bouton Imprimer normalement.
 

Pièces jointes

Re : Imprimer avec VBA : Rien ne se passe !

Re

Tu ne crois pas que j'aurai compris si tu avais joint une pièce jointe dès le départ ...🙄
D’autant plus que j'avais parfaitement compris 😉
Code:
Sub Recap2()
With Sheets("Bilan")
ligne = .Range("A65000").End(xlUp).Row + 1
.Cells(ligne, 1) = Sheets("Autorisation").Cells(20, 1)
.Cells(ligne, 2) = Sheets("Autorisation").Cells(11, 1)
.Cells(ligne, 3) = Sheets("Autorisation").Cells(20, 4)
.Cells(ligne, 4) = Sheets("Autorisation").Cells(20, 5)
.PageSetup.PrintArea = .Range("A1:D" & ligne).Address
.PrintPreview 'pour test
End With
End Sub

J'ai donc remplacer NOMFEUILLE par Autorisation
 
Dernière édition:
Re : Imprimer avec VBA : Rien ne se passe !

Re

Treve de plaisanterie 😉
Et avec ceci ca donne quoi ?
Code:
Sub Recap3()
With Sheets("Bilan")
ligne = .Range("A65000").End(xlUp).Row + 1
.Cells(ligne, 1) = Sheets("Autorisation").Cells(20, 1)
.Cells(ligne, 2) = Sheets("Autorisation").Cells(11, 1)
.Cells(ligne, 3) = Sheets("Autorisation").Cells(20, 4)
.Cells(ligne, 4) = Sheets("Autorisation").Cells(20, 5)
End With
With Sheets("Autorisation").PageSetup
    .PrintArea = Sheets("Autorisation").Range("A1:E36").Address
    .CenterHorizontally = True
    .CenterVertically = True
    .Orientation = xlPortrait
    .FitToPagesWide = 1
    .FitToPagesTall = 1
End With
Sheets("Autorisation").PrintPreview ' ici pour test
End Sub

Pour vraiment imprimer, remplacer :
Sheets("Autorisation").PrintPreview ' ici pour test
par
Sheets("Autorisation").PrintOut
 
Re : Imprimer avec VBA : Rien ne se passe !

Re

Avec le code précédemment fourni, l’aperçu avant impression de s'affiche pas ???
(voir copie d'écran ci-dessous)


PS: Tu devrais mettre un fichier exemple sans données confidentielles.
 
Dernière édition:
Re : Imprimer avec VBA : Rien ne se passe !

Non, rien ne s'affiche, ça vient peut être du PC. Je vais essayer sur un autre.
Et pour les données il n'y a rien de confidentiel, tous les noms et fonctions sont retrouvables sur le site de l'entreprise ^^
 
- 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

  • Question Question
Microsoft 365 worksheet_change
Réponses
29
Affichages
840
Réponses
16
Affichages
1 K
Réponses
0
Affichages
100
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…