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

modif de lignes de code pour impression(selection de feuilles)

charette63

XLDnaute Occasionnel
bonsoir ou bonjour, c'est selon

lors de l'activation de ces quelques lignes de code, les feuilles d'un classeur donné s'imprime à l'exception de la première.


Code:
Workbooks("horaire nursing " & ComboBox1.Value & " " & TextBox1.Value & ".xls").Activate
      Dim feuille
        With Workbooks("horaire nursing " & ComboBox1.Value & " " & TextBox1.Value & ".xls").Sheets
         For feuille = 1 To .Count
         If feuille <> 1 Then .Item(feuille).PrintOut = False
         Next feuille
       End With

J'aimerais également exclure de l'impression les feuilles dont le nom contient un chiffre.
A savoir que le nombre de ces feuilles est variable et qu'elles se trouveront toujours en fin de classeur,
et aussi qu'elles se nommeront toujours "remplacement" (remplacement 1, remplacement 2,..etc..)

Pouvez-vous m'aider

cordialement
Thierry
 

charette63

XLDnaute Occasionnel
bonjour,

je continue mes recherches, et je suis arrivé à ceci

Code:
Dim Sht As Worksheet
      
For Each Sht In Workbooks("horaire nursing " & ComboBox1.Value & " " & TextBox1.Value & ".xls").Sheets
    If Sht.Name <> "horaire"  Then
    Sht.PrintOut
    End If
Next

avec ce code, j'en suis au même point qu'avec le code precedent, le feuille "horaire" étant le feuille1 du premier code.

je modifie le code comme ceci:

Code:
    If Sht.Name <> "horaire" And Sht.Name <> "Remplacement 1" Then

maintenant, ni la feuille "horaire" ni la feuille "Remplacement 1" ne s'impriment, on avance mais il y a plusieurs feuilles "Remplacement " en nombre variable. je tente alors ceci:

Code:
    If Sht.Name <> "horaire" And Sht.Name <> "Remplacement *" Then

ça ne fonctionne pas, je tente donc autre chose:

Code:
    If Sht.Name <> "horaire" And Sht.Name <> Left(Sht.Name, 12) = "Remplacement" Then

toujours rien.

une idée peut-être?

merci

cordialement
Thierry
 

Robert

XLDnaute Barbatruc
Repose en paix
Re : modif de lignes de code pour impression(selection de feuilles)

Bonjour Thierry, bonjour le forum,

Peut-être comme ça :
Code:
Dim x As Integer
Workbooks("horaire nursing " & ComboBox1.Value & " " & TextBox1.Value & ".xls").Activate
For x = 2 To Sheets.Count
If Left(Sheets(x).Name, 12) <> "Remplacement" Then Sheets(x).PrintOut
Next x
 

charette63

XLDnaute Occasionnel
eh bien, mon bon Robert, ce n'est pas "peut-être" mais "surement" comme ça

Ca fonctionne du feu de dieu

Il ne me reste à espérer de ne jamais avoir un employé qui s'appelle Remplacement

avec tous mes remerciements

cordialement
Thierry
 

Discussions similaires

Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…