Appel fonction si changement de valeur

MI27 -  
pijaku Messages postés 13513 Date d'inscription   Statut Modérateur Dernière intervention   -
Bonjour,

Ma question est simple : Comment exécuter une fonction personnalisée uniquement s'il y a un changement de valeur n'importe où dans la feuille?

Merci par avance

1 réponse

  1. pijaku Messages postés 13513 Date d'inscription   Statut Modérateur Dernière intervention   2 773
     
    Bonjour,

    Tu peux utiliser la procédure événementielle "Change" de ta feuille de calcul :

    'procédure qui détecte tout changement dans la feuille de calcul
    Private Sub Worksheet_Change(ByVal Target As Range)
    'appel la fonction personnalisée nommée Fonction1 
    'avec comme argument le nombre 13
    Call Fonction1(13)
    End Sub 
    0
    1. MI27
       
      Merci pijaku.
      Pourquoi le nombre 13 comme argument?
      0
    2. pijaku Messages postés 13513 Date d'inscription   Statut Modérateur Dernière intervention   2 773
       
      Pourquoi pas?

      En fait, avant de te répondre j'ai fait le test avec cette fonction :

      Function Fonction1(i as Integer)
      Fonction1 = i * 2
      End Function

      Ma fonction, pour retourner un résultat a donc besoin d'un nombre entier comme argument. Je l'ai donc appelée avec le nombre 13... sans aucune autre raison que 13 est un nombre entier...
      Call Fonction1(13)
      0
    3. MI27
       
      J'ai un message d'erreur "incompatibilité de type" et le nombre 13 est en surbrillance.
      0
    4. MI27
       
      D'accord. Par contre j'ai #NOM? dans ma cellule devant contenir le résultat de la fonction. À quoi est due cela?
      0