Lancement de plusieures macros

Résolu
Bonjour,

j'ai 10 macros ( macro1 à macro 10) je souhaite avoir une commande qui les lancent toutes en un seul click mais le problème est que :

1) mes macros sont trop longues pour les condencées en une.

2) lorsque que je m'étais dis "bon allé tu auras plusieurs boutons" quand je clique dessus un message apparait et me dit:

"erreur d'éxécution '1004' :
La méthode Select de la classe Range a échoué."

ma macro est la suivante:

Sheets("Juillet").Select
ActiveWindow.ScrollColumn = 39
ActiveWindow.ScrollColumn = 38
ActiveWindow.ScrollColumn = 37
ActiveWindow.ScrollColumn = 36
ActiveWindow.ScrollColumn = 35
ActiveWindow.ScrollColumn = 33
Range("AM5:AU5").Select
Application.CutCopyMode = False
Selection.Copy
Sheets("Récapitulatif heures").Select
ActiveWindow.SmallScroll Down:=51
Range("C67").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Sheets("Juillet").Select
Application.CutCopyMode = False
Range("AM6:AU6").Select
Selection.Copy
Sheets("Récapitulatif heures").Select
Range("C87").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Range("E78").Select
Sheets("Juillet").Select
Application.CutCopyMode = False
Range("AM7:AU7").Select
Selection.Copy
Sheets("Récapitulatif heures").Select
ActiveWindow.SmallScroll Down:=27
Range("C107").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Sheets("Juillet").Select
Application.CutCopyMode = False
Range("AM8:AU8").Select
Selection.Copy
Sheets("Récapitulatif heures").Select
ActiveWindow.SmallScroll Down:=21
Range("C127").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Sheets("Juillet").Select
Application.CutCopyMode = False
Range("AM9:AU9").Select
Selection.Copy
Sheets("Récapitulatif heures").Select
ActiveWindow.SmallScroll Down:=27
Range("C147").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Sheets("Juillet").Select
Application.CutCopyMode = False
Range("AM10:AU10").Select
Selection.Copy
Sheets("Récapitulatif heures").Select
ActiveWindow.SmallScroll Down:=18
Range("C167").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
ActiveWindow.SmallScroll Down:=33
Sheets("Juillet").Select
Application.CutCopyMode = False
Range("AM11:AU11").Select
Selection.Copy
Sheets("Récapitulatif heures").Select
Range("C187").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Sheets("Juillet").Select
Application.CutCopyMode = False
Range("AM12:AU12").Select
Selection.Copy
Sheets("Récapitulatif heures").Select
Range("C207").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
ActiveWindow.SmallScroll Down:=42
Sheets("Juillet").Select
Application.CutCopyMode = False
Range("AM13:AU13").Select
Selection.Copy
Sheets("Récapitulatif heures").Select
Range("C227").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Sheets("Juillet").Select
Application.CutCopyMode = False
Range("AM14:AU14").Select
Selection.Copy
Sheets("Récapitulatif heures").Select
Range("C247").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
ActiveWindow.SmallScroll Down:=39
Sheets("Juillet").Select
Application.CutCopyMode = False
Range("AM15:AU15").Select
Selection.Copy
Sheets("Récapitulatif heures").Select
Range("C267").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Sheets("Juillet").Select
Application.CutCopyMode = False
Range("AM16:AU16").Select
Selection.Copy
Sheets("Récapitulatif heures").Select
Range("C287").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
ActiveWindow.SmallScroll Down:=39
Sheets("Juillet").Select
Application.CutCopyMode = False
Range("AM17:AU17").Select
Selection.Copy
Sheets("Récapitulatif heures").Select
Range("C307").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
ActiveWindow.SmallScroll Down:=18
Sheets("Juillet").Select
Application.CutCopyMode = False
Range("AM18:AU18").Select
Selection.Copy
Sheets("Récapitulatif heures").Select
Range("C327").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
ActiveWindow.SmallScroll Down:=24
Sheets("Juillet").Select
Application.CutCopyMode = False
Range("AM19:AU19").Select
Selection.Copy
Sheets("Récapitulatif heures").Select
Range("C347").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Sheets("Juillet").Select
Application.CutCopyMode = False
Range("AM20:AU20").Select
Selection.Copy
Sheets("Récapitulatif heures").Select
Range("C367").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
ActiveWindow.SmallScroll Down:=39
Sheets("Juillet").Select
Application.CutCopyMode = False
Range("AM21:AU21").Select
Selection.Copy
Sheets("Récapitulatif heures").Select
Range("C387").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Sheets("Juillet").Select
Application.CutCopyMode = False
Range("AM22:AU22").Select
Selection.Copy
Sheets("Récapitulatif heures").Select
Range("C407").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
ActiveWindow.SmallScroll Down:=39
Sheets("Juillet").Select
Application.CutCopyMode = False
Range("AM23:AU23").Select
Selection.Copy
Sheets("Récapitulatif heures").Select
Range("C427").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
ActiveWindow.SmallScroll Down:=18
Sheets("Juillet").Select
Application.CutCopyMode = False
Range("AM24:AU24").Select
Selection.Copy
Sheets("Récapitulatif heures").Select
Range("C447").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
ActiveWindow.SmallScroll Down:=21
Sheets("Juillet").Select
Application.CutCopyMode = False
Range("AM25:AU25").Select
Selection.Copy
Sheets("Récapitulatif heures").Select
Range("C467").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
ActiveWindow.SmallScroll Down:=21
Sheets("Juillet").Select
Application.CutCopyMode = False
Range("AM26:AU26").Select
Selection.Copy
Sheets("Récapitulatif heures").Select
Range("C487").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
ActiveWindow.SmallScroll Down:=18
Sheets("Juillet").Select
Application.CutCopyMode = False
Range("AM27:AU27").Select
Selection.Copy
Sheets("Récapitulatif heures").Select
Range("C507").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
ActiveWindow.SmallScroll Down:=21
Sheets("Juillet").Select
Application.CutCopyMode = False
Range("AM28:AU28").Select
Selection.Copy
Sheets("Récapitulatif heures").Select
Range("C527").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
ActiveWindow.SmallScroll Down:=21
Sheets("Juillet").Select
Application.CutCopyMode = False
Range("AM29:AU29").Select
Selection.Copy
Sheets("Récapitulatif heures").Select
Range("C547").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
ActiveWindow.SmallScroll Down:=21
Sheets("Juillet").Select
Application.CutCopyMode = False
Range("AM30:AU30").Select
Selection.Copy
Sheets("Récapitulatif heures").Select
Range("C567").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Sheets("Juillet").Select
Application.CutCopyMode = False
Range("AM31:AU31").Select
Selection.Copy
Sheets("Récapitulatif heures").Select
Range("C587").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
ActiveWindow.SmallScroll Down:=39
Sheets("Juillet").Select
Application.CutCopyMode = False
Range("AM32:AU32").Select
Selection.Copy
Sheets("Récapitulatif heures").Select
Range("C607").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Sheets("Juillet").Select
Application.CutCopyMode = False
Range("AM33:AU33").Select
Selection.Copy
Sheets("Récapitulatif heures").Select
Range("C627").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
ActiveWindow.SmallScroll Down:=42
Sheets("Juillet").Select
Application.CutCopyMode = False
Range("AM34:AU34").Select
Selection.Copy
Sheets("Récapitulatif heures").Select
Range("C647").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
ActiveWindow.SmallScroll Down:=18
Sheets("Juillet").Select
Application.CutCopyMode = False
Range("AM35:AU35").Select
Selection.Copy
Sheets("Récapitulatif heures").Select
Range("C667").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Sheets("Juillet").Select
Application.CutCopyMode = False
Range("AM36:AU36").Select
Selection.Copy
Sheets("Récapitulatif heures").Select
Range("C687").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
ActiveWindow.SmallScroll Down:=39
Sheets("Juillet").Select
Application.CutCopyMode = False
Range("AM37:AU37").Select
Selection.Copy
Sheets("Récapitulatif heures").Select
Range("C707").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
ActiveWindow.SmallScroll Down:=21
Sheets("Juillet").Select
Application.CutCopyMode = False
Range("AM38:AU38").Select
Selection.Copy
Sheets("Récapitulatif heures").Select
Range("C727").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
ActiveWindow.SmallScroll Down:=21
Sheets("Juillet").Select
Application.CutCopyMode = False
Range("AM39:AU39").Select
Selection.Copy
Sheets("Récapitulatif heures").Select
Range("C747").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Sheets("Juillet").Select
ActiveWindow.SmallScroll Down:=24
Application.CutCopyMode = False
Range("AM40:AU40").Select
Selection.Copy
Sheets("Récapitulatif heures").Select
Range("C767").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
ActiveWindow.SmallScroll Down:=39
Sheets("Juillet").Select
Application.CutCopyMode = False
Range("AM41:AU41").Select
Selection.Copy
Sheets("Récapitulatif heures").Select
Range("C787").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
ActiveWindow.SmallScroll Down:=21
Sheets("Juillet").Select
Application.CutCopyMode = False
Range("AM42:AU42").Select
Selection.Copy
Sheets("Récapitulatif heures").Select
Range("C807").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
ActiveWindow.SmallScroll Down:=21
Sheets("Juillet").Select
Application.CutCopyMode = False
Range("AM43:AU43").Select
Selection.Copy
Sheets("Récapitulatif heures").Select
Range("C827").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
ActiveWindow.SmallScroll Down:=18
Sheets("Juillet").Select
Application.CutCopyMode = False
Range("AM44:AU44").Select
Selection.Copy
Sheets("Récapitulatif heures").Select
Range("C847").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
ActiveWindow.SmallScroll Down:=21
Sheets("Juillet").Select
Application.CutCopyMode = False
Range("AM45:AU45").Select
Selection.Copy
Sheets("Récapitulatif heures").Select
Range("C867").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Sheets("Juillet").Select
Application.CutCopyMode = False
Range("AM46:AU46").Select
Selection.Copy
Sheets("Récapitulatif heures").Select
Range("C887").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
ActiveWindow.SmallScroll Down:=42
Sheets("Juillet").Select
Application.CutCopyMode = False
Range("AM47:AU47").Select
Selection.Copy
Sheets("Récapitulatif heures").Select
Range("C907").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
ActiveWindow.SmallScroll Down:=18
Sheets("Juillet").Select
Application.CutCopyMode = False
Range("AM48:AU48").Select
Selection.Copy
Range("AJ65:AJ67").Select
Sheets("Récapitulatif heures").Select
Range("C927").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Sheets("Juillet").Select
Application.CutCopyMode = False
Range("AM49:AU49").Select
Selection.Copy
Sheets("Récapitulatif heures").Select
Range("C947").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False

End Sub

cordialement

Magestic
Configuration: Windows XP
Internet Explorer 6.0

7 réponses

  • Votes
  • Date
  • Date décroissante
  1. Contributeur
    salut
    lancer plusieurs macros en même temps je suis pas sûr que ça soit bon par contre les lancer les unes après las autres en rajoutant avant le End Sub une commande pour lancer la macro suivante me parait plus indiqué
    1. oui? mais comment faire? il y a un code spécial? est-il possible de de le faire en un seul click?

      merci

      magestic
    2. Contributeur
      @magestic54je suis pas spécialiste de smacros juste utilisateur
      mais le code que indiques on dirait une macro réalisée avec l'enregistreur de macro donc beaucoup trop d'instruction inutiles
      pour l'appel de la macro suivante essaie de mettre avant End Sub le nom de la 2ème macro
  2. en effet je l'ai fais par l'enregistreur, je vais essayer de mettre le nom de la macro suivante.

    merci
    1. Super ça marche! je vais poster le code de ma premiere macro qui fait encore de la rebélion pour voir si quelqu'un pourra me dépatouiller et tout sera bon! merci de ton aide
      1. Modérateur
        Bonjour,
        Pour lancer des macros les unes après les autres dans l'ordre voulu, créer une macro qui les appellent et ressemble à peu près à cela :
        Sub Appel_Macro ()
        Call macro1
        Call macro2
        Call macro3
              etc
        End Sub


        Bonne fin de journée
        1. Contributeur
          à mon avis (à tester sur une copie du fichier et pas sur l'original)
          tout ce qui est :
          ActiveWindow.ScrollColumn =
          ActiveWindow.SmallScroll Down:=
          Operation:=xlNone, SkipBlanks _:=False, Transpose:=False
          Application.CutCopyMode = False

          peut être supprimé
          1. Modérateur
            UsulArrakis a raison, ceci doit, bien évidemment, toujours être testé sur une copie et non sur l'original afin de ne pas perdre son travail si cela ne fonctionne pas comme voulu.
            A+
            1. Contributeur
              @magestic54salut
              menu affichage / barre d'outils / controle de formulaire / tu crées un bouton
              tu cliques sur "l'équerre" dans la barre d'outils pour passer en mode création
              clic droit sur le bouton et là tu peux lui affecter une macro
            2. @UsulArrakisoui je sais mais lorsque je lui affecte la macro il me dit qu'il y a un prb. erreur 1004.
              alors j'ai détaillé ma macro ( sur l'autre forum ) car ca m'affiche prb avec "range" et "select".

              merci
          2. Bonjour,

            Quand on veut lancer automatiquement une série de maquereaux, on les lance généralement avec une macro qui se comporte comme un fichier batch.