Bonjour Nat, 2passage, Dan, le Forum
Ah c'est triste la fin d'un CDD, j'espère que tu as du taff en vu.
Sinon pour bien terminer ce programme et ce CDD en beauté, on peut aussi faire quelque chose d'assez simple qui permettra un code dynamiquement évolutif...
Imaginons tes Feuilles :
Interface
Budget
January
February
March
April
May
June
July
Echéancier Semestriel
August
September
October
November
December
Echéancier Annuel
Calcul
Tableau
Database
Et qu'en fait tu ne veuilles qu'imprimer les douzes mois :
Alors il suffirait d'indiquer ceci dans le nom de l'onglet :
Interface ZZ
Budget ZZ
January
February
March
April
May
June
July
Echéancier Semestriel ZZ
August
September
October
November
December
Echéancier Annuel ZZ
Calcul ZZ
Tableau ZZ
Database ZZ
Ensuite un code comme celui-ci lirait dynamiquement les noms et ferait la ségrégation automatiquement :
Option Explicit
Sub PrintOutSpecialSheetsByName()
Dim WS As Worksheet
For Each WS In ThisWorkbook.Worksheets
If InStr(1, WS.Name, 'ZZ', 1) = 0 Then
WS.PrintOut
End If
Next
End Sub
Il y a a plein d'autres méthodes, avec aussi (par exemple le début du nom de feuille...
Exemple :
Interface
Budget
Tableau January
Tableau February
Tableau March
Tableau April
Tableau May
Tableau June
Tableau July
Echéancier Semestriel
Tableau August
Tableau September
Tableau October
Tableau November
Tableau December
Echéancier Annuel
Calcul
Tableau
Database
Option Explicit
Option Compare Text
Sub PrintOutSpecialSheetsByLeftName()
Dim WS As Worksheet
For Each WS In ThisWorkbook.Worksheets
If Left(WS.Name, 3) = 'TAB' Then
WS.PrintOut
End If
Next
End Sub
Par contre cet exemple imprimera les Douzes Mois et aussi la feuille 'Tableau'...
Enfin il y a de quoi s'amuser avant ton départ !!!
Bon Appétit
[ol]@+Thierry[/ol]
Message édité par: _Thierry, à: 17/08/2005 11:35