Ordre d'exécution des macros

Bonjour,

Sur mon classeur excel 2007 j'ai 2 macros que je voudrais exécuter l'une après l'autre car la seconde reprend des valeurs issues du traitement de la première.

Si je ne fais pas ça, excel mouline à l'infini et plante..

Pourriez-vous me dire comment faire?

Merci pour votre aide

Bonsoir

Comment sont appelés ces macros ?

idées :

Fusionner les deux macros

Tester une valeur qui indique si la 1ère macro à été exécutée

Etc...

Voilà ces deux macro :

Private Sub Worksheet_Calculate()

Range("B2:B10").Select

Selection.Copy

Range("A2:A10").Select

Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _

:=False, Transpose:=False

End Sub

Private Sub Worksheet_Change(ByVal Target As Range)

Range("A2:A1000").Sort Key1:=Range("A1"), Order1:=xlAscending, Header:=xlNo, _

OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom, _

DataOption1:=xlSortNormal

End Sub

Ces deux macros marchent indépendamment

Comment fait-on pour les fusionner ?

Merci

Bonjour

Sans connaitre le contexte

Et en constatant quelques bizarreries étranges

Tu copies de B2:B10 vers A2:A10

Ensuite tu tries de A2:A1000 ?

Avec comme clé de tri A1 ?

J'ai fusionné les deux macros

Si ce n'est pas le résultat escompté joins un fichier

Private Sub Worksheet_Calculate()
  Application.EnableEvents = False
  Range("B2:B10").Copy
  Range("A2").PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, _
            SkipBlanks:=False, Transpose:=False
  Range("A2:A1000").Sort Key1:=Range("A1"), Order1:=xlAscending, Header:=xlNo, _
                         OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom, _
                         DataOption1:=xlSortNormal
  Application.EnableEvents = True
End Sub

Ca marche très bien!

Merci beaucoup

Rechercher des sujets similaires à "ordre execution macros"