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

7 réponses

  1. gbinforme Messages postés 14930 Date d'inscription   Statut Contributeur Dernière intervention   4 744
     
    Bonjour,

    Ton exemple ne doit pas correspondre car tu veux sans doute faire une boucle ?
    Sinon
    Sheets("Ouvrage").Move Before:=Sheets("tonchoix") 
    0
  2. 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
  3. 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
  4. Vous n’avez pas trouvé la réponse que vous recherchez ?

    Posez votre question
  5. michel_m Messages postés 18903 Date d'inscription   Statut Contributeur Dernière intervention   3 320
     
    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
  6. 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
    1. michel_m Messages postés 18903 Date d'inscription   Statut Contributeur Dernière intervention   3 320
       
      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
      1. Gopalkri1 > michel_m Messages postés 18903 Date d'inscription   Statut Contributeur Dernière intervention  
         
        Oui mais liste = array (.... ne fonctionne pas non plus
        merci
        0
  7. 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
    1. michel_m Messages postés 18903 Date d'inscription   Statut Contributeur Dernière intervention   3 320
       
      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
      1. Gopalkri1 > michel_m Messages postés 18903 Date d'inscription   Statut Contributeur Dernière intervention  
         
        Merci Michel, sincèrement désolé si je t'ai froissé, je suis novice
        0