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

Problème écriture macro

enki

XLDnaute Nouveau
Bonjour,
j'ai créer une macro qui nomme les onglets selon la valeur d'une cellule.
maintenant, je voudrait faire une macro qui imprime toute les feuilles, mais j'ai un problème, le nom des onglets change, donc la macro se bloque.
pourriez vous me dire comment mettre "Feuil1" a la place du nom de l'onglet.

Sub Imprimer()

Sheets(Array("Pp H S 5", "Cc 01 Févr", "Cc 02 Févr", "Cc 03 Févr", "Cc 04 Févr", _
"Cc 05 Févr", "Cc 06 Févr", "Pp 01 Févr")).Select
Sheets("Pp H S 5").Activate

End Sub
 

Pierrot93

XLDnaute Barbatruc
Re : Problème écriture macro

Bonjour Enki,

essaye ce code, imprime toutes les feuilles du classeur actif :

Code:
Dim ws As Worksheet
For Each ws In Worksheets
    ws.PrintOut
Next ws

bonne journée
@+
 

Pierrot93

XLDnaute Barbatruc
Re : Problème écriture macro

Re,

comme ceci, l'impression se fera selon l'index de l'array :

Code:
Option Explicit
Sub test()
Dim t() As Variant, i As Byte
t = Array("Pp H S 5", "Cc 01 Févr", "Cc 02 Févr", "Cc 03 Févr", "Cc 04 Févr", _
"Cc 05 Févr", "Cc 06 Févr", "Pp 01 Févr")
For i = LBound(t) To UBound(t)
    Sheets(t(i)).PrintOut
Next i
End Sub

@+
 

enki

XLDnaute Nouveau
Re : Problème écriture macro

je te remercie,
mais comme je le disait en début de post les nom des onglets change "Pp H S 5", "Cc 01 Févr", "Cc 02 Févr",, je voudrait les remplacer par feuil1, feuil2 ect, mais je ne connait pas la syntaxe
 
Dernière édition:

Pierrot93

XLDnaute Barbatruc
Re : Problème écriture macro

Re,

pour utiliser les "codename" :

Code:
Option Explicit
Sub test()
Dim t() As Variant, i As Byte
t = Array(Feuil1, Feuil2,Feuil3)
For i = LBound(t) To UBound(t)
    t(i).PrintOut
Next i
End Sub

@+
 

Pierrot93

XLDnaute Barbatruc
Re : Problème écriture macro

Re,

A noter également que cette méthode (PrintOut) s'applique également au classeur, dans ce cas bien sur l'impression se fera dans l'ordre des numéros d'index des feuilles

Code:
ActiveWorkbook.PrintOut

@+
 

Discussions similaires

Réponses
2
Affichages
558
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…