IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Macros et VBA Excel Discussion :

[E-00][VBA]Déplacement de feuilles


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éprouvé Avatar de Brunodm13
    Profil pro
    Inscrit en
    Novembre 2008
    Messages
    129
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2008
    Messages : 129
    Par défaut [E-00][VBA]Déplacement de feuilles
    Bonjour,

    J'ai besoin que 7 feuilles soient les 7 premières du classeur pour exécuter un traitement.
    J'ai utilisé ce code.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    nbFeuilles = ThisWorkbook.Sheets.Count
     
    Sheets("A1").Move after:=Sheets(nbFeuilles)
    Sheets("A2").Move after:=Sheets(nbFeuilles)
    Sheets("A3").Move after:=Sheets(nbFeuilles)
    Sheets("A4").Move after:=Sheets(nbFeuilles)
    Sheets("A5").Move after:=Sheets(nbFeuilles)
    Sheets("A6").Move after:=Sheets(nbFeuilles)
    Sheets("A7").Move after:=Sheets(nbFeuilles)
     
    While Sheets(1).Name <> "A1"
    Sheets(1).Move after:=Sheets(nbFeuilles)
    Wend
    je me dis qu'il existe sûrement une méthode plus "élégante" peut-être avec une variable tableau, variable que je n'ai jamais utilisée.

    Merci d'avance à ceux qui me répondront.

    Bruno

  2. #2
    pgz
    pgz est déconnecté
    Expert confirmé Avatar de pgz
    Homme Profil pro
    Développeur Office VBA
    Inscrit en
    Août 2005
    Messages
    3 692
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 72
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Office VBA
    Secteur : Conseil

    Informations forums :
    Inscription : Août 2005
    Messages : 3 692
    Par défaut
    Bonjour.

    Je te propose ceci
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    Dim i As Integer
     
    With Application.ThisWorkbook
        .Sheets("A1").Move .Sheets(1)
        For i = 2 To 7
            .Sheets("A" & i).Move , .Sheets("A" & i - 1)
        Next i
    End With
    Surtout, ne pas enlever la virgule du deuxième Move.

    Cordialement,

    PGZ

  3. #3
    Membre éprouvé Avatar de Brunodm13
    Profil pro
    Inscrit en
    Novembre 2008
    Messages
    129
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2008
    Messages : 129
    Par défaut
    Bonsoir pgz,

    cela fonctionne et est plus élégant que ce que j'avais fait.

    Merci !

    Cordialement.

    Bruno

    Edit :
    Merci à Philippe JOCHMANS d'avoir déplacé mon message.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [VBA-E]ouvrir feuille excel en lecture seule
    Par ogenki dans le forum Macros et VBA Excel
    Réponses: 21
    Dernier message: 10/02/2006, 13h36
  2. [VBA]activer les feuilles d'un classeur Excel
    Par jemigo dans le forum Macros et VBA Excel
    Réponses: 6
    Dernier message: 27/01/2006, 17h58
  3. [VBA]Renseigner une feuille excel à partir d'un site web
    Par DonKnacki dans le forum Macros et VBA Excel
    Réponses: 6
    Dernier message: 23/01/2006, 13h43
  4. [VBA EXCEL] Protection feuille avec filtre auto
    Par mirumoto dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 16/01/2006, 10h48
  5. [VBA-E] Sélection feuilles sous excel
    Par Mystic eyes dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 05/02/2004, 13h27

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo