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 :

boucle sur 12 feuille dans un fichier excel [XL-2003]


Sujet :

Macros et VBA Excel

  1. #1
    Membre averti Avatar de bosk1000
    Profil pro
    Inscrit en
    Juin 2008
    Messages
    706
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2008
    Messages : 706
    Points : 367
    Points
    367
    Par défaut boucle sur 12 feuille dans un fichier excel
    bonjour a tous
    sur un fichier avec 15 feuille
    j'en ai 12 qui porte comme nom janvier, février, etc jusqu'à décembre

    je veux vider une partie de chacune de ces feuilles
    j'ai fait ceci
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    Sheets("janvier").Select
    Range("a3", [d3].End(xlDown)).Value = ""
    donc la je réussis sur janvier, mais pour éviter de copier ce code 11 fois de plus en changeant janvier, comment puis je créer une boucle ?

  2. #2
    Responsable
    Office & Excel


    Homme Profil pro
    Formateur et développeur chez EXCELLEZ.net
    Inscrit en
    Novembre 2003
    Messages
    19 128
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 57
    Localisation : Belgique

    Informations professionnelles :
    Activité : Formateur et développeur chez EXCELLEZ.net
    Secteur : Enseignement

    Informations forums :
    Inscription : Novembre 2003
    Messages : 19 128
    Points : 55 940
    Points
    55 940
    Billets dans le blog
    131
    Par défaut
    Salut

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
      Dim Feuille As Worksheet
     
      For Each Feuille In ThisWorkbook.Worksheets
        Select Case Feuille.Name
          Case "Janvier", "Février", "Mars", "Avril","Mai","Juin", ... (à compléter)
            Feuille.Range("a3", [d3].End(xlDown)).Value = ""
        End Select
      Next Feuille

  3. #3
    Expert éminent
    Avatar de Didier Gonard
    Homme Profil pro
    Formateur Office et développeur VBA en freelance
    Inscrit en
    Février 2008
    Messages
    2 805
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Formateur Office et développeur VBA en freelance

    Informations forums :
    Inscription : Février 2008
    Messages : 2 805
    Points : 6 699
    Points
    6 699
    Par défaut
    Bonjour,

    tes 15 feuilles sont ordonnées d'une certaine façon leur position à un instant T est représentée par un index => worksheets(1) est la première, mais ce n'est lié qu'à la position, si tu la mets en dernier elle aura toujours le même nom, mais son index devient le 15.

    Donc à un instant figé si tes feuilles sont en premier tu peux faire du genre :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    For I = 1 to 12
     
    worksheets(I) .........
     
    nextr I
    Sinon tu peux passer par les noms en utilisant un Array, voir l'aide vba à "Sheets, collection d'objets" et à Array.

    Utilisez Sheets(tableau) pour spécifier plusieurs feuilles. L'exemple suivant montre comment déplacer les feuilles Sheet4 et Sheet5 au début du classeur.

    Sheets(Array("Sheet4", "Sheet5")).Move before:=Sheets(1)
    donc tu construit un Array dont les 12 éléments sont les noms de tes feuilles et après avec une boucle tu parcours les 12 indices de ton Array.

    cordialement,

    Didier

  4. #4
    Membre averti Avatar de bosk1000
    Profil pro
    Inscrit en
    Juin 2008
    Messages
    706
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2008
    Messages : 706
    Points : 367
    Points
    367
    Par défaut
    merci a vous deux
    cela fonctionne très bien

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

Discussions similaires

  1. Boucle sur les feuilles d'un fichier et calcul du nombre de lignes
    Par eric4459 dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 20/01/2015, 15h33
  2. Réponses: 6
    Dernier message: 27/03/2012, 15h58
  3. Réponses: 12
    Dernier message: 27/01/2010, 08h59
  4. boucle avec copier coller dans un fichier excel
    Par Chalu_C_Momo dans le forum Macros et VBA Excel
    Réponses: 8
    Dernier message: 20/11/2008, 16h45
  5. 40 Feuilles dans 1 fichier Excel = Autant de Fichier .CSV
    Par Nissartis dans le forum Macros et VBA Excel
    Réponses: 7
    Dernier message: 25/03/2008, 15h53

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