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 :

appliquer une macro à plusieurs feuilles d'un même classeur


Sujet :

Macros et VBA Excel

  1. #1
    Nouveau Candidat au Club
    Femme Profil pro
    Étudiant
    Inscrit en
    Juin 2018
    Messages
    1
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Finance

    Informations forums :
    Inscription : Juin 2018
    Messages : 1
    Points : 1
    Points
    1
    Par défaut appliquer une macro à plusieurs feuilles d'un même classeur
    Bonjour à tous,
    Je débute sur vba et je bloque sur un programme.
    J'ai un classeur Excel avec 24 feuilles très complètes, et je souhaite appliquer la même macro sur ces feuilles. J'ai réussi à trouver un code :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    Sub restitution_generale()
     
    Application.ScreenUpdating = False
     
         Sheets("WIT FR BT ANDROID (fight club)").Select
         Call Module8.restitution
         Sheets("WIT FR BT ANDROID (On TV)").Select
        Call Module8.restitution
         Sheets("WIT FR BT ANDROID (speed race)").Select
         Call Module8.restitution
         Sheets("WIT FR BT ANDROID Humanity").Select
        Call Module8.restitution
         Sheets("WIT FR BT ios fight club").Select
       Call Module8.restitution
         Sheets("WIT FR BT ios On TV").Select
         Call Module8.restitution
         Sheets("WIT FR BT ios speed ra").Select
         Call Module8.restitution
         Sheets("WIT FR BT ios Humanity").Select
        Call Module8.restitution
         Sheets("WIT FR sfr ios fight club").Select
         Call Module8.restitution
         Sheets("WIT FR sfr ios On TV ").Select
         Call Module8.restitution
         Sheets("WIT FR sfr ios speed race").Select
         Call Module8.restitution
         Sheets("WIT FR sfr ios Humanity").Select
         Call Module8.restitution
         Sheets("WIT FR sfr and fight club").Select
       Call Module8.restitution
         Sheets("WIT FR sfr and On TV").Select
         Call Module8.restitution
         Sheets("WIT FR sfr and speed race").Select
      Call Module8.restitution
        Sheets("WIT FR sfr and Humanity").Select
        Call Module8.restitution
          Sheets("WIT FR or and fight club").Select
          Call Module8.restitution
          Sheets("WIT FR or and On TV").Select
         Call Module8.restitution
          Sheets("WIT FR or and speed race").Select
        Call Module8.restitution
          Sheets("WIT FR or and Humanity").Select
         Call Module8.restitution
          Sheets("WIT FR or ios fight club ").Select
        Call Module8.restitution
          Sheets("WIT FR or ios On TV").Select
        Call Module8.restitution
          Sheets("WIT FR or ios speed race").Select
       Call Module8.restitution
           Sheets("WIT FR or ios Humanity").Select
         Call Module8.restitution
     
         Application.ScreenUpdating = True
     
        ActiveWorkbook.Save
     
     
    End Sub
    Cependant, il s'exécute en 20 minutes...
    J'ai essayé de selectionner l'ensemble des feuilles avec Sheets(Array..), mais dans ce cas le code ne s'applique que sur la 1e feuille sélectionnée.
    Si quelqu'un a une idée je suis preneuse,
    Merci à tous, bonne journée !!

  2. #2
    Membre émérite Avatar de Thautheme
    Homme Profil pro
    salarié
    Inscrit en
    Août 2014
    Messages
    1 373
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 63
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : salarié

    Informations forums :
    Inscription : Août 2014
    Messages : 1 373
    Points : 2 594
    Points
    2 594
    Par défaut
    Bonjour Zazoub, bonjour le forum,

    Pour essayer de comprendre la lenteur, c'est plutôt le code de la macro restitution du module8 qu'il nous faudrait...
    À plus,

    Thauthème

    Je suis Charlie

  3. #3
    Expert éminent sénior Avatar de Menhir
    Homme Profil pro
    Ingénieur
    Inscrit en
    Juin 2007
    Messages
    16 037
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Finistère (Bretagne)

    Informations professionnelles :
    Activité : Ingénieur
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2007
    Messages : 16 037
    Points : 32 866
    Points
    32 866
    Par défaut
    La première chose que je ferais, c'est le mettre en paramètre de Module8.restitution, le nom de l'onglet à traiter.
    Ca éviterait déjà tous ces Select.

    Cela dit, comme déjà signalé par Thautheme, la lenteur vient certainement du contenu de Module8.restitution.
    Tant qu'on ne sait rien du contenu de ce code, difficile savoir si on peut l'améliorer.
    Merci de cliquer sur pour chaque message ayant aidé puis sur pour clore cette discussion.

Discussions similaires

  1. Appliquer une Macro à plusieurs cellules définis
    Par taminem dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 18/09/2015, 15h56
  2. Réponses: 2
    Dernier message: 16/10/2014, 16h19
  3. une seule macro pour plusieurs feuilles d'un même classeur
    Par pouldom dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 31/12/2010, 11h38
  4. [XL-2000] Application d'une macro à plusieurs feuilles
    Par Alqualonde dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 12/08/2010, 23h28
  5. appliquer une macro à plusieurs cellules
    Par litium dans le forum Macros et VBA Excel
    Réponses: 4
    Dernier message: 09/02/2009, 21h53

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