IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Macros et VBA Excel Discussion :

[E-03] Recalcul pour une fonction


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre actif
    Homme Profil pro
    Retraité
    Inscrit en
    Février 2006
    Messages
    70
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 74
    Localisation : France

    Informations professionnelles :
    Activité : Retraité

    Informations forums :
    Inscription : Février 2006
    Messages : 70
    Par défaut [E-03] Recalcul pour une fonction

    Bonjour à tous.

    Version d'EXCEL : 2003
    J'ai crée une fonction qui calcule la moyenne d'une partie de colonne à condition que la couleur du texte ne soit pas rouge.
    La première fois que cette fonction personnalisée est entrée dans une cellule elle fonctionne parfaitement bien.
    Le problème est que si je passe la couleur d'un nombre en rouge la fonction n'est plus opérationnelle.
    Je dois cliquer sur la cellule, cliquer dans la zone d'édition et faire "Entrée" et là : j'ai le résultat attendu .
    Ma demande : comment faire en sorte pour que le calcul se fasse automatiquement dès que la couleur d'un nombre est changé ??
    Car cette fonction est incluse dans une centaine de cellule.
    Je peux fournir le code, mais il fonctionne parfaitement bien et je ne pense pas qu'il soit en cause, c'est bien le déclenchement de cette fonction qui pose problème.
    Bien sur le classeur et la feuille sont en calcul automatique.
    Merci de vos réponses.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
     
    Function CalMoy(Cel01 As Range, Cel02 As Range)
        Dim TabAdr
        Dim LigDeb, LigFin, LigInt As Integer
        Dim ColInt As String
        Dim Total As Long
        Dim Nb As Integer
        Dim AdrCel
     
        ColInt = Split(Cel01.Address(), "$")(1)
        LigDeb = CInt((Split(Cel01.Address(), "$")(2)))
     
        LigFin = CInt(Split(Cel02.Address(), "$")(2))
     
        For LigInt = LigDeb To LigFin
            If Range(ColInt & LigInt).Font.Color = 0 Then
                Total = Total + Range(ColInt & LigInt)
                Nb = Nb + 1
            End If
        Next
        CalMoy = Total / Nb
    End Function

  2. #2
    Membre Expert
    Profil pro
    Inscrit en
    Juillet 2007
    Messages
    2 130
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2007
    Messages : 2 130
    Par défaut
    Salut faroukvazaha et le forum
    J'ai juste lu le début, mais c'est un phénomène maintes fois traité :
    Il manque l'instruction Application.volatile
    Avec cette instruction, à chaque calcul de la feuille, la fonction est recalculée
    A+

  3. #3
    Membre actif
    Homme Profil pro
    Retraité
    Inscrit en
    Février 2006
    Messages
    70
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 74
    Localisation : France

    Informations professionnelles :
    Activité : Retraité

    Informations forums :
    Inscription : Février 2006
    Messages : 70
    Par défaut Application.volatile
    Bonjour
    Merci pour la réponse : c'est exactement ce dont j'avais besoin.
    J'ai pourtant cherché mais les mots clefs : fonction, recalcul etc.., etc.. ne m'ont jamais renseigné sur cette "Application.volatile".

    Il est vrai qu'une fois connu les recherches avec ces termes donnent toutes des solutions intéressantes.

    A+

    Bon dimanche

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 15
    Dernier message: 26/03/2006, 12h10
  2. Aide pour une fonction
    Par mimi060101 dans le forum Scheme
    Réponses: 1
    Dernier message: 24/02/2006, 16h59
  3. [Tableaux] demande de code pour une fonction.php
    Par carmen256 dans le forum Langage
    Réponses: 4
    Dernier message: 21/01/2006, 17h22
  4. [FLASH MX] nom variable pour une fonction
    Par totoche dans le forum Flash
    Réponses: 2
    Dernier message: 20/12/2005, 14h00
  5. paramètres pour une fonction
    Par bul dans le forum Général JavaScript
    Réponses: 5
    Dernier message: 28/05/2005, 07h49

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo