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

VBA : imprimer x feuilles selon choix dans une liste déroulante

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

nat54

XLDnaute Barbatruc
Bonjour,

Difficile de trouver un titre explicite

Je souhaite imprimer tous les comptes via un code VBA
car actuellement mes collègues doivent
- choisir le 1er compte en cellule c7
- imprimer
- choisir le 2è compte en cellule c7
- imprimer
.........
là j'ai mis que 3 comptes mais il y a en pléthore

Comment faire ?

J'ai essayé un peu (cf module 1) mais il me manque vraiment des connaissances en vba

Merci
 

Pièces jointes

Re : VBA : imprimer x feuilles selon choix dans une liste déroulante

Bonjour Nat54,
Voici un exemple de macro qui imprime chaque fois l'onglet INTERRO
Bruno

Code:
Sub Imprimer_tous_les_comptes()
With Sheets("bd")
For lig = 1 To .[A65536].End(xlUp).Row 'boucler sur toutes les lignes en bd
INTERRO.[C7] = .Cells(lig, 1)
INTERRO.PrintOut
Next
End With
End Sub
 
Re : VBA : imprimer x feuilles selon choix dans une liste déroulante

Bonjour,

Cela ne fonctionne pas ça me met un débogage sur la ligne :

Code:
INTERRO.[C7] = .Cells(lig, 1)

Il ne faut pas (re)préciser les feuilles d'origine et de destination ?!
 
Dernière édition:
Re : VBA : imprimer x feuilles selon choix dans une liste déroulante

Re,

J'ai modifié et ça marche

Code:
Sub Imprimer_tous_les_comptes()
With Sheets("bd")
For lig = 1 To .[A65536].End(xlUp).Row 'boucler sur toutes les lignes en bd
Sheets("INTERRO").Select
Range("C7") = Sheets("bd").Cells(lig, 1)
Sheets("INTERRO").PrintOut
Next
End With
End Sub

Il y a sûrement plus optimal...
 
Re : VBA : imprimer x feuilles selon choix dans une liste déroulante

Salut,
Oui petite boulette de ma part,
Avec un With on définit un element ensuite pour l'appeler il suffit de mettre un point
voir ma macro précédente . . .
Il est inutile de selectionner d'ailleurs même déconseillé.
Voici deux façons de faire
Code:
Sub Imprimer_tous_les_comptes()
For lig = 1 To Sheets("bd").[A65536].End(xlUp).Row 'boucler sur toutes les lignes en bd
Sheets("INTERRO").[C7] = Sheets("bd").Cells(lig, 1)
Sheets("INTERRO").PrintOut
Next
End Sub
et avec la méthode with regarde le .[C7] et .printout
Code:
Sub Imprimer_tous_les_comptes()
With Sheets("INTERRO")
For lig = 1 To Sheets("bd").[A65536].End(xlUp).Row 'boucler sur toutes les lignes en bd
.[C7] = Sheets("bd").Cells(lig, 1)
.PrintOut
Next
End With
End Sub

Bruno
 
- 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
892
E
  • Question Question
Réponses
1
Affichages
2 K
P
Réponses
35
Affichages
4 K
J
Réponses
3
Affichages
2 K
jannine NOLAM
J
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…