lancer automatiquement une macro

ripo

XLDnaute Junior
Bonjour à tous,
Je souhaite:
- lancer la macro1 quand une cellule fixe est égal à 1
- lancer la macro2 quand la même cellule est égal à 2
et ce, automatiquement, sans bouton

Merci de votre aide si précieuse
A+
 

ripo

XLDnaute Junior
Jacques87
merci de ta réponse,
J'ai copié le code dans un module, mais 'A1' dans le code provoque une 'erreur de compilation, instruction incorrecte à l'intérieur d'une procédure'

merci de m'indiquer mon erreur
... je dois m'absenter, bonne nuit!
à demain...
 

Jacques87

XLDnaute Accro
Bonsoir

Voici un petit exemple
Si la cellule A1 contient 1 une cellule se colorie en rouge, si elle contient 2 la même cellule se colorie en Bleu
Pour actionner le test il faut après avoir validé la cellule A1, cliquer sur le bouton

A demain [file name=macro_20060122212311.zip size=9710]http://www.excel-downloads.com/components/com_simpleboard/uploaded/files/macro_20060122212311.zip[/file]
 

lio

XLDnaute Occasionnel
Bonjour Ripo, patbart,Jacques87, le forum,

Ci joint un exemple complémentaire à celui de Jacques sans bouton de commande.

Salutations. Lio. [file name=Ripo.zip size=9487]http://www.excel-downloads.com/components/com_simpleboard/uploaded/files/Ripo.zip[/file]
 

Pièces jointes

  • Ripo.zip
    9.3 KB · Affichages: 28
  • Ripo.zip
    9.3 KB · Affichages: 28
  • Ripo.zip
    9.3 KB · Affichages: 31

Dan

XLDnaute Barbatruc
Bonsoir Ripo, le forum,

Vas dans VBA par ALT + F11, puis CTRL + R pour accéder à VBA project.
Ensuite double clique sur la feuille concernée par ta demande et place le code ci-dessous :
Code:
Private Sub Worksheet_Change(ByVal Target As Excel.Range)
If Range('A1').Value = 1 Then
Call macro1
ElseIf Range('A1').Value = 2 Then
Call Macro2
End If
End Sub

Chaque changement de valeur en A1 fera exécuter la macro1 ou macro2.
Remplace donc MAcro1 et macro2 par le noms de tes macros se rapportant aux valeurs 1 et 2.

A bientôt

;)
 

Jacques87

XLDnaute Accro
Bonsoir Lio

Je viens à l'instant de te faire parvenir un message dans ta BAL, comme quoi il n'y a que les montagnes qui ne se rencontrent pas, et encore ...
C'est vrai que des macros ou une procédure évenementielle comme celle de Dan, sont plus 'propres' qu'un bouton. mais j'ai par habitude d'utiliser cette méthode et ai du mal à m'en défaire
Enfin quel que soit le chemin parcouru, le but est d'arriver à destination ... comme disais un grand penseur (comment personne jusqu'à présent n'a dit cela, et ben dis donc serais-je un garnd penseur qui s'ignore?)
 

patbart

XLDnaute Nouveau
Bonjour,

Regarde dans le fichier joint si c'est ce genre de procédure que tu recherches. En fonction du
résultat dans la cellule C4 il ouvre une macro.

@+ Patbart

c'est ma première BA sur le site

[file name=Essai_20060123022133.zip size=7900]http://www.excel-downloads.com/components/com_simpleboard/uploaded/files/Essai_20060123022133.zip[/file]

Pour jacques87 et Dan, je n'ai pas réussi à voir l'animation pour les PJ mais bon j'espère que cette fois ci mon fichier sera bien joint même si c'est trop tard.
Bonne nuit à tous

Message édité par: patbart, à: 23/01/2006 02:21
 

Pièces jointes

  • Essai_20060123022133.zip
    7.7 KB · Affichages: 23

Jacques87

XLDnaute Accro
Patbart

je me permets d'intervenir pour te conseiller de jeter un coup d'oeil sur le premier Fil de ce Forum où tu trouveras une aide très bien réalisée pour joindre un fichier à ton post
Attention :
1) il doit être zippé
2) pas d'espaces dans le nom
3) moins de 50 Ko

Et puis, félicitation pour ton inscription au sein de notre grande famille.
Bien venu au club
 

Dan

XLDnaute Barbatruc
Re,

Bienvenue à toi Patbart.
En complément à ce que Jacques vient de dire, lorsque tu constates que ton fichier n'est pas passé, retourne simplement sur ton message et clique sur EDITER, et là place ton fichier.
Cela évite que ton post ne soit placé plusieures fois comme c'est le cas ici.

;)
 

lio

XLDnaute Occasionnel
Rebonsoir le fil,

Comme mon exemple était un peu merd...., je te joins un autre fichier. En fait, je voulais de te faire un 'truc' dans le genre de Dan ...

Salutations.Lio. [file name=Ripo_20060122221946.zip size=10375]http://www.excel-downloads.com/components/com_simpleboard/uploaded/files/Ripo_20060122221946.zip[/file]
 

Pièces jointes

  • Ripo_20060122221946.zip
    10.1 KB · Affichages: 20

didique

XLDnaute Occasionnel
Bonsoir

Dan essaie de poster mais ça passe pas... ne pas déesepérer... la réponse arrive... si la caravane passe et les chiens aboient alors c'est que les appaches sont pas loin !!!

Bonne nuit à ceux qui dorment déjà !

:silly:
 

_Thierry

XLDnaute Barbatruc
Repose en paix
Bonsoir à tous,

Pour ton Code Lio, je ferai directement ainsi :

Private Sub Worksheet_Change(ByVal Target As Excel.Range)
If Not Target.Address(0, 0) = 'A1' Then Exit Sub
   
With Target.Interior
       
Select Case Val(Target.Value)
               
Case 1: .ColorIndex = 3
               
Case 2: .ColorIndex = 6
               
Case Else: .ColorIndex = xlNone
       
End Select
   
End With
End Sub


Et donc dans la foulée pour Ripo, dans la même structure :

Dans le Private Module de Feuille (Click Droit sur l'Onglet => Visualiser le Code

Private Sub Worksheet_Change(ByVal Target As Excel.Range)
If Not Target.Address(0, 0) = 'A1' Then Exit Sub
       
Select Case Val(Target.Value)
               
Case 1: Macro1
               
Case 2: Macro2
               
Case Else: Macro3
       
End Select
End Sub

Dans un Module Standard :

Sub Macro1()
    MsgBox 'Hello I
'm the Macro1'
End Sub

Sub Macro2()
    MsgBox 'Hello I
'm the Macro2'
End Sub

Sub Macro3()
    MsgBox 'Hello I
'm the Macro3'
End Sub


Bonne Soirée
[ol]@+Thierry[/ol]
 

Discussions similaires

Réponses
3
Affichages
175

Statistiques des forums

Discussions
312 432
Messages
2 088 375
Membres
103 835
dernier inscrit
Jaco24