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

Imprimer seconde feuille

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

S

Softdy

Guest
Bonjour,

J aimerai imprimer la feuille 1 et la feuille 2 mais si la cellule a1 de cette feuille numero 2 ne comporte rien alors n'imprimer que la feuille 1.

Merci de votre aide
 
Re : Imprimer seconde feuille

Bonjour à tous,

Peux-tu essayer ceci dans un module :

VB:
Option Explicit

Sub Test()
    Sheets(Array("Feuil1", "Feuil2")).Select
    If Feuil2.Cells(1, 1) <> "" Then
        ActiveWindow.SelectedSheets.PrintOut From:=1, To:=2
    Else
        ActiveWindow.SelectedSheets.PrintOut From:=1, To:=1
    End If
    Feuil1.Select
End Sub

A + à tous

Edition : Salut Camarchepas
 
Dernière édition:
Re : Imprimer seconde feuille

Bonjour, salutations M. JCGL

Voici une solution via VBA.

J'utilise une petite technique pour savoir si une feuille est imprimable ou pas par le vba en ajoutant à droite du nom de l'onglet un "_".

une autre option peut être de déclarer le nom des feuille possible mais bon , il faut revenir dans le code si modif du nom ou ajout d'une feuille.

le code détermine si au moins une cellule est renseignée , si oui la derniere ligne employée et sélectionne la feuille en mode ajout puis compte les page .

En final si au moins une page imprimable alors envoi vers impression.



Code:
Sub imprime()
Dim LigneDeFin As Long, NbPage As Integer
Dim Onglet As Worksheet
Dim Classeur As Workbook
'Initialise le classeur à traiter
Set Classeur = ThisWorkbook
'Scrute l'ensemble des feuilles du classeur
For Each Onglet In Classeur.Worksheets
 'Si repère feuille imprimable
 If Right(Onglet.Name, 1) = "_" Then
  'Si au moins une cellule de renseignée
  If WorksheetFunction.CountA(Onglet.Cells) > 0 Then
    'Laissée ici mais pas forcément utile dans ce cas
     'Recherche de la dernière ligne contenant quelque chose
     LigneDeFin = Onglet.Cells.Find(What:="*", After:=[A1], SearchOrder:=xlByRows, SearchDirection:=xlPrevious).Row
  End If
  ' Si quelque chose à imprimer
  If LigneDeFin > 0 Then
     LigneDeFin = 0
    'Incrémente le nombre de page
    NbPage = NbPage + 1
    'Multi selection des feuilles à imprimer
    If NbPage = 1 Then
      Onglet.Select
     Else
      Onglet.Select (False)
    End If
  End If
End If
Next
If NbPage > 0 Then ActiveWindow.SelectedSheets.PrintOut Copies:=1, Collate:=False
End Sub
 

Pièces jointes

- 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
Assurez vous de marquer un message comme solution pour une meilleure transparence.

Discussions similaires

  • Question Question
Microsoft 365 agrandir la liste
Réponses
21
Affichages
655
Réponses
2
Affichages
177
  • Question Question
Autres Planning
Réponses
8
Affichages
322
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…