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
 

Discussions similaires

Statistiques des forums

Discussions
312 490
Messages
2 088 877
Membres
103 981
dernier inscrit
vinsalcatraz