Actioner une procédure VBA

fred -  
 Utilisateur anonyme -
Bonjour,
je voudrais simplement actionner une procédure automatiquement lorsque l'opérateur change la valeur de la cellule A1
début:
sub worksheet_change ()
if cells(1,1) est changé then lancer la macro
end if
end sub

merci

4 réponses

Utilisateur anonyme
 
Bonjour,

Exemple type :

A placer derrière la feuille !

Option Explicit
'

Private Sub Worksheet_Change(ByVal Target As Range)

    Dim Plage As Range, Intersection As Range
    
    Set Plage = Range("A1")
    Set Intersection = Application.Intersect(Target, Plage)
    
    If Not (Intersection Is Nothing) Then
        Call MaMacro
        Call MaFonction
    End If
    
End Sub
'

Private Sub MaMacro()
    MsgBox "Macro"
End Sub
'

Private Function MaFonction()
    MsgBox "Fonction"
End Function
'

Lupin
0
mikebzh Messages postés 127 Date d'inscription   Statut Membre Dernière intervention   28
 
Coucou
Tu avais presque tout

[code]
Private Sub Worksheet_Change(ByVal Target As Range)
If Target = Cells(1, 1) Then
MsgBox ("valeur A1 modifié")
End If
End Sub
[\code]

Tu n'as plus qu'à remplacer la msgbox par ta macro
A plus
0
fred
 
merci au top les gars!
juste une aute question
en A1 j'ai bonjour
en A2 j'ai rien
B1=A1 donc B1 renvoi bopnjour
B2=A2 donc B2 renvoie 0

comment je peux faire pour que cela efface automatiquement le zéro si la case B1 est vide?
0
Utilisateur anonyme
 
Bonjour,

En B1 comme en B2, placer cette formule :

[B1].Value =SI((A1 <> "");SI(A1 <> 0;A1;"");" ")
[B2].Value =SI((A2 <> "");SI(A2 <> 0;A2;"");" ")

Lupin
0