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 :

Application.Volatile qui ne fonctionne pas


Sujet :

Macros et VBA Excel

  1. #1
    Membre confirmé
    Homme Profil pro
    Mécanicien avion
    Inscrit en
    Février 2018
    Messages
    175
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France, Charente Maritime (Poitou Charente)

    Informations professionnelles :
    Activité : Mécanicien avion

    Informations forums :
    Inscription : Février 2018
    Messages : 175
    Par défaut Application.Volatile qui ne fonctionne pas
    Bonjour a tous,

    j'ai une macro qui fait une somme suivant la couleur de la case.
    Le problème étant que je suis obligé de faire F9 pour actualiser mes sommes malgré que j'ai Application.Volatile dans mon code VBA.
    Comment puis-je resoudre mon problème plz ?

    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
    Function SOMMESICOULEUR(cellules As Range)
        Application.Volatile
     
        Dim total As Double
        Dim cellule As Range
     
        For Each cellule In cellules
            If cellule.Interior.Color = Application.Caller.Interior.Color Then
                total = total + cellule
            End If
        Next
     
        SOMMESICOULEUR = total
     
    End Function
    MErci pour votre aide

  2. #2
    Expert confirmé
    Avatar de jurassic pork
    Homme Profil pro
    Bidouilleur
    Inscrit en
    Décembre 2008
    Messages
    4 178
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Bidouilleur
    Secteur : Industrie

    Informations forums :
    Inscription : Décembre 2008
    Messages : 4 178
    Par défaut
    Hello,
    Application.Volatile n'est pas obligatoire : si dans ta fonction tu passes la plage de cellules qui change pour que la somme change. La plage de cellule peut très bien ne pas servir dans ta fonction mais sa présence dans la formule oblige Excel à rafraîchir la fonction bien sûr si l'option calculer automatiquement est activée.
    Je ne sais pas si ce que j'ai écrit est très clair Calculer automatiquement est bien activé dans ton classeur ? et qu'est-ce qui change la couleur ou la valeur des cellules ? le calcul automatique n'est que pour le changement de valeurs.

    Ami calmant, J.P

  3. #3
    Rédacteur
    Avatar de Philippe Tulliez
    Homme Profil pro
    Formateur, développeur et consultant Excel, Access, Word et VBA
    Inscrit en
    Janvier 2010
    Messages
    13 114
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Formateur, développeur et consultant Excel, Access, Word et VBA

    Informations forums :
    Inscription : Janvier 2010
    Messages : 13 114
    Billets dans le blog
    53
    Par défaut
    Bonjour,
    En complément de la réponse de J.P., la modification d'une couleur n'agit pas sur le recalcul des fonctions volatiles
    Seule la modification d'une valeur, l'action sur la touche Del (effacement) ainsi que l'usage du pinceau (recopie de format) lance le recalcul ou encore BackTab suivi d'Enter

    Faites l'essai avec une fonction volatile pour vous en convaincre
    Philippe Tulliez
    Ce que l'on conçoit bien s'énonce clairement, et les mots pour le dire arrivent aisément. (Nicolas Boileau)
    Lorsque vous avez la réponse à votre question, n'oubliez pas de cliquer sur et si celle-ci est pertinente pensez à voter
    Mes tutoriels : Utilisation de l'assistant « Insertion de fonction », Les filtres avancés ou élaborés dans Excel
    Mon dernier billet : Utilisation de la fonction Dir en VBA pour vérifier l'existence d'un fichier

  4. #4
    Membre confirmé
    Homme Profil pro
    Mécanicien avion
    Inscrit en
    Février 2018
    Messages
    175
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France, Charente Maritime (Poitou Charente)

    Informations professionnelles :
    Activité : Mécanicien avion

    Informations forums :
    Inscription : Février 2018
    Messages : 175
    Par défaut
    Bonjour, merci de ta repnse.

    Je suis bien en calcul automatique.
    C'est ma couleur qui change. De part ce faite, est-il possible de rajouter au code un truc qui dit "changement de couleur d'une casse = changement du résultat dans la case total de même couleur " ?

    Citation Envoyé par jurassic pork Voir le message
    Hello,
    Application.Volatile n'est pas obligatoire : si dans ta fonction tu passes la plage de cellules qui change pour que la somme change. La plage de cellule peut très bien ne pas servir dans ta fonction mais sa présence dans la formule oblige Excel à rafraîchir la fonction bien sûr si l'option calculer automatiquement est activée.
    Je ne sais pas si ce que j'ai écrit est très clair Calculer automatiquement est bien activé dans ton classeur ? et qu'est-ce qui change la couleur ou la valeur des cellules ? le calcul automatique n'est que pour le changement de valeurs.

    Ami calmant, J.P

  5. #5
    Expert confirmé
    Avatar de jurassic pork
    Homme Profil pro
    Bidouilleur
    Inscrit en
    Décembre 2008
    Messages
    4 178
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Bidouilleur
    Secteur : Industrie

    Informations forums :
    Inscription : Décembre 2008
    Messages : 4 178
    Par défaut
    voir ici pour une solution mais attention cela ne fonctionne que si l'on change la couleur par le ruban Accueil avec couleur de remplissage. Si on change la couleur par clic droit sur la cellule cela ne fonctionne pas car ce sont les événements du ruban qui sont capturés.

  6. #6
    Membre confirmé
    Homme Profil pro
    Mécanicien avion
    Inscrit en
    Février 2018
    Messages
    175
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France, Charente Maritime (Poitou Charente)

    Informations professionnelles :
    Activité : Mécanicien avion

    Informations forums :
    Inscription : Février 2018
    Messages : 175
    Par défaut
    Citation Envoyé par jurassic pork Voir le message
    voir ici pour une solution mais attention cela ne fonctionne que si l'on change la couleur par le ruban Accueil avec couleur de remplissage. Si on change la couleur par clic droit sur la cellule cela ne fonctionne pas car ce sont les événements du ruban qui sont capturés.
    bonjour à tous,

    j'ai enfin eu le temps de regarder aujourd'hui et d'essayer le code. j'ai pas réussi à le faire fonctionner.
    Y-aurait-il pas une solution plus simple et qui fonctionne peut importe la méthode pour le changement de couleur ?

    Merci à vous et bonne soirée

  7. #7
    Membre émérite
    Homme Profil pro
    Retraité
    Inscrit en
    Octobre 2022
    Messages
    685
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 63
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Retraité

    Informations forums :
    Inscription : Octobre 2022
    Messages : 685
    Par défaut
    Bonjour,

    de mon point de vue, l'approche est fragile dès le départ. Si l'idée est que les utilisateurs mettent de la couleur sur une colonne pour signifier une erreur, un statut... on est à la merci de pb de confusion dans la palette (pas le bon bleu, vert...), sans parler des pb d'accessibilité (daltonniens), d'interopérabilité (essaye de faire une export des couleurs pour voir ) ... et de recalcul.

    Bref, je pense que faire porter une information par une couleur de cellule n'est pas un choix robuste et pérène.

    Donc je mettrais qqpart une colonne statut (ou même pourquoi pas code couleur ) avec une liste déroulante ou assimilé, après quoi on n'a plus de souci pour les formules. Et puis des mises en forme conditionnelles pour mettre la couleur et conserver l'effet visuel de la chose.

    Après tu fais ce que tu veux. Y en a qui ont essayé...

Discussions similaires

  1. Lanceur d'application python qui ne fonctionne pas
    Par Philippe Dpt35 dans le forum Ubuntu
    Réponses: 6
    Dernier message: 10/11/2017, 22h13
  2. Application qui ne fonctionne pas uniquement sous IE
    Par Lucas G dans le forum Apache
    Réponses: 3
    Dernier message: 30/09/2013, 22h15
  3. Application qui ne fonctionne pas correctement sur W7 64 bits
    Par JeanMarc_T2k dans le forum Windows 7
    Réponses: 6
    Dernier message: 22/03/2011, 11h34
  4. Réponses: 7
    Dernier message: 23/11/2010, 17h15
  5. Réponses: 2
    Dernier message: 22/07/2009, 08h39

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