Trie des onglets dans un ordre définit

Gopalkri1 -  
 Gopalkri1 -
Bonjour,
Pouvez vous m'aider s'il vous plait, je désire mettre dans un ordre définit plusieurs onglets d'un fichier Excel, j'utilise la formule ci-dessous:
Sheets("Rapport").Move Before:=Sheets("Ouvrage")

1) Est ce que je peux intégrer dans cette formule plusieurs onglets.
2) Lorsque j'utilise cette formule, je n'arrive pas à intégrer l'onglet ouvrage.

Auriez vous une solution s'il vous plait.
Merci


A voir également:

7 réponses

gbinforme Messages postés 14946 Date d'inscription   Statut Contributeur Dernière intervention   4 724
 
Bonjour,

Ton exemple ne doit pas correspondre car tu veux sans doute faire une boucle ?
Sinon
Sheets("Ouvrage").Move Before:=Sheets("tonchoix") 
0
Gopalkri
 
J'essaye désespérément d'imprimer des onglets d'une feuille excel dans l'ordre que je désire sans avoir à modifier l'ordre des onglets dans mon fichier car c'est un fichier que j'ai récupéré alors Auriez vous une solution pour modifier seet(array("onglet3","onglet5","onglet2"....).select comment je peux faire pour donner cet ordre lorsque je génère le pdf merci si vous pouvez me donner une solution
0
michel_m Messages postés 16602 Date d'inscription   Statut Contributeur Dernière intervention   3 314
 
Bonjour

tes demandes sont différentes
dans le message 1 tu veux trier les onglets en les déplaçant
dans le message 3, tu veux un ordre d'impression des onglets

Qu'est ce qu'on Fait ?

DOUBLON AVEC
https://forums.commentcamarche.net/forum/affich-33156927-ordre-d-impression-d-onglets-excel
:-(

 Michel
0
Gopalkri1
 
Bonjour Michel_m: je me suis surement mal exprimé! désolé je veux pour définir l'ordre d'impression de mes onglets sans avoir à les ranger dans le ruban. Soit lorsque je génère le PDF sortir par exemple l'onglet 3 avant l'onglet 1 et puis mettre après l'onglet 2.
Merci si vous pouvez m'aider.
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
michel_m Messages postés 16602 Date d'inscription   Statut Contributeur Dernière intervention   3 314
 
Il est très mal vu de faire des doublons
https://forums.commentcamarche.net/forum/affich-33156927-ordre-d-impression-d-onglets-excel
Tu restes sur le premier et tu fais un Up


pour imprimer dans un ordre défini (sur une maquette pour tester le système)
Option Explicit
Sub ccc()
Dim list, Cptr As Byte
liste = Array("feuil3", "feuil1", "feuil2")
For Cptr = 0 To UBound(liste)
MsgBox liste(Cptr)
Next
End Sub

 Michel
0
Gopalkri1
 
Merci Michel, désolé encore pour le doublon!
voilà mon code, je n'arrive pas à le faire fonctionner au niveau de liste(array(...

'Impression Rapport

Sheets("Contrôle initial").Select
If Range("AA2") = 1 Then
'Sheets("Rapport").Move After:=Sheets("Ouvrage")
Dim list, cptr As Byte
liste(Array("Rapport", "Ouvrage", "Contrôle initial", "Echantillonnage", "Doc", "Ecarts", "Annexe 1", "Ctrl visuels LA", "Paramètre")).Select
For cptr = 0 To UBound(liste)
MsgBox liste(cptr)
Next
ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, Filename:= _
Nom1 & ".pdf", Quality:= _
xlQualityStandard, IncludeDocProperties:=True, IgnorePrintAreas:=False, _
OpenAfterPublish:=True

End If

Sheets("Contrôle initial").Select
If Range("AA2") = 0 Then
'Sheets("Rapport").Move after:=Sheets("Ouvrage")
Dim list, cptr As Byte
liste(Array("Rapport", "Ouvrage", "Contrôle initial", "Echantillonnage", "Doc", "Ecarts", "Annexe 1", "Ctrl visuels LA", "Paramètre")).Select
For cptr = 0 To UBound(liste)
MsgBox liste(cptr)
Next
ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, Filename:= _
Nom1 & ".pdf", Quality:= _
xlQualityStandard, IncludeDocProperties:=True, IgnorePrintAreas:=False, _
OpenAfterPublish:=True
End If

Pouvez vous me donner une aide svp
0
michel_m Messages postés 16602 Date d'inscription   Statut Contributeur Dernière intervention   3 314
 
Commence par lire ce que je t'ai proposé !!!!

tu as écris
liste(Array("Rapport", "Ouvrage", "Contrôle initial", "Echantillonnage", "Doc", "Ecarts", "Annexe 1", "Ctrl visuels LA", "Paramètre")).Select 


C'EST NIMPORTE QUOI!

abandon: perte de temps inutile
0
Gopalkri1 > michel_m Messages postés 16602 Date d'inscription   Statut Contributeur Dernière intervention  
 
Oui mais liste = array (.... ne fonctionne pas non plus
merci
0
Gopalkri1
 
Bonjour Michel m'a un peu aidé mais mon code ne marche pas, pouvez vous m'aider à le modidier
merci

Sheets("Contrôle initial").Select
If Range("AA2") = 1 Then
'Sheets("Rapport").Move After:=Sheets("Ouvrage")
Dim list, cptr As Byte
liste=Array("Rapport", "Ouvrage", "Contrôle initial", "Echantillonnage", "Doc", "Ecarts", "Annexe 1", "Ctrl visuels LA", "Paramètre")).Select
For cptr = 0 To UBound(liste)
MsgBox liste(cptr)
Next
ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, Filename:= _
Nom1 & ".pdf", Quality:= _
xlQualityStandard, IncludeDocProperties:=True, IgnorePrintAreas:=False, _
OpenAfterPublish:=True

End If

Sheets("Contrôle initial").Select
If Range("AA2") = 0 Then
'Sheets("Rapport").Move after:=Sheets("Ouvrage")
Dim list, cptr As Byte
liste=Array("Rapport", "Ouvrage", "Contrôle initial", "Echantillonnage", "Doc", "Ecarts", "Annexe 1", "Ctrl visuels LA", "Paramètre")).Select
For cptr = 0 To UBound(liste)
MsgBox liste(cptr)
Next
ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, Filename:= _
Nom1 & ".pdf", Quality:= _
xlQualityStandard, IncludeDocProperties:=True, IgnorePrintAreas:=False, _
OpenAfterPublish:=True
End If
0
michel_m Messages postés 16602 Date d'inscription   Statut Contributeur Dernière intervention   3 314
 
C'est pas vrai !!!!

Je t'ai passé une maquette démo !!!

le msgbox est fait UNIQUEMENT pour vérifier qu'on a l'ordre marqué dans liste
déjà, dans un 1° temps, tu me dis "Ca marche pas" parce que tu as oublié de mettre le signe "=" !!!!

tu supprimes le msgbox et tu mets le lancement de l'impression à la place

Adieu
0
Gopalkri1 > michel_m Messages postés 16602 Date d'inscription   Statut Contributeur Dernière intervention  
 
Merci Michel, sincèrement désolé si je t'ai froissé, je suis novice
0