Rafraichir l'écran

Bonjour

J'ai un code qui me permet de compter les cellules d'une couleur X.

Lorsque je change la couleur d'une cellule. tout est beau le calcul s'effectue.

Lorsque j'ouvre le fichier d'un autre ordi. il n'y a aucun calcul qui s'effectue :/

J'ai l'impression que le code ne "roule" pas.

Function CountCcolor(range_data As Range, criteria As Range) As Long
    Dim datax As Range
    Dim xcolor As Long
xcolor = criteria.Interior.ColorIndex
For Each datax In range_data
    If datax.Interior.ColorIndex = xcolor Then
        CountCcolor = CountCcolor + 1
    End If
Next datax
End Function

J'ai inscrit ce code dans un module. Est-ce au bon endroit?

Voici le contenu d'une cellule dans Excel : =CountCcolor($B$2:$B$3, C6)

Merci,

Bonsoir,

Si l'autre fichier n'a pas cette fonction dans un module

Bonsoir,

avez vous essayé la touche [F9], quelque fois les classeurs ont les calculs en manuel et non pas en automatique...

@ bientôt

LouReeD

Re,

Au cas où tu veux rendre ta fonction disponible en permanence, quel que soit le classeur ouvert :

  • Soit tu places ce module dans le classeur Perso.xls
  • Soit tu crées une macro complémentaire :
1) Tu enregistres le classeur contenant le module comme macro complémentaire XLA (Fichier -> Enregistrer sous -> Type de fichier = "Macro complémentaire Microsoft Excel (*.xla) ou (*.xlam)"

2) Tu fermes le classeur

3) Tu vas dans le menu Outils -> Macros complémentaires et tu coches le nom du classeur XLA. S'il n'apparaît pas dans la liste, clique sur "Parcourir".

Ta fonction apparaîtra dans la catégorie "Personnalisées" de l'assistant fonction.

Bonjour,

@LouReeD - Oui j'ai essayé la touche [F9] :/

@M12 - Je me suis sans sans doute mal exprimé. Le fichier que j'ouvre est sur le réseau. Si je l'ouvre a partir de mon poste tout est ok. Si c'est mon confrère qui l'ouvre. ça ne fonctionne pas.

J'ai insérer un msgbox dans le code pour voir s'il était exécuté. de mon pc je le vois, du poste de mon collègue la boite de dialogue me s'affiche pas => la fonction ne roule pas

Il n'est pas nécessaire que la fonction fonctionne sur plusieurs classeur. Seulement sur ce XLSM

Merci de voter aide

Bonsoir,

en ajoutant

Application.Volatile

au début du code, permettra une mise à jour lors du calcul de la feuille concernée.

Le calcul à lieu à minima lors du changement de valeur d'une cellule, la modification d'un format ne lance pas le recalcule...

Alors si cela fonctionne sur votre fichier, c'est peut-être du au fonctionnement (lancement) d'un code suite à la modification de sélection de cellule...

Mais sans fichier...

Voici le mien :

@ bientôt

LouReeD

Merci beaucoup @LouReeD

J'essaie le tout des demain et vous reviens avec les résultats...

Hello,

Peut être aussi un soucis dans les paramètres de "sécurité des macros", le problème semble très spécifique à l'ordinateur du collègue, s'il arrive à faire fonctionner d'autre macros, le dossier où se trouve ce classeur ne doit pas être dans ses dossier approuvé.

Voila au cas où

Bonjour

@LouReeD :Sur le fichier que tu as joint je dois effectuer un F9 pour que le calcul s'effectue . J'ai ajouter

    SendKeys "{F9}", True

En espérant que les calculs s'effectuent automatique. ce qui ne fut pas le cas

@waard : J'ai regardé dans les paramètres de "sécurité des macros" et je n'ai rien vue de particulier

Merci de votre aide

Bonsoir,

je disais :

en ajoutant

Code: Tout sélectionner

Application.Volatile

au début du code, permettra une mise à jour lors du calcul de la feuille concernée.

En somme sans faire F9, la cellule se met à jour si et seulement si un calcul de la feuille est lancé, et ce calcul de feuille est lancé systématiquement lors du changement de valeur dans une cellule quelconque de cette même feuille.

Donc en effet soit il faut appuyer sur la touche F9 soit il faut que la feuille se calcul suite au changement d'une valeur.

C'est pourquoi je me demande bien comment sur votre fichier la mise à jour se fait "automatiquement"...

N'avez vous pas un code qui fait un truc lors du changement de sélection de cellule ?

Sans fichier ce n'est pas facile

@ bientôt

LouReeD

re-bonjour

Voici une version "simplifier" de mon fichier et une vidéo qui démontre que le calcul qui s'effectue à chaque changement de couleur

Merci!

29couleur2.xlsm (27.69 Ko)

https://youtu.be/4Owacw2tH10

Bonsoir,

Ok je comprend, vous utilisez le pinceau de mise en forme...

Cette fonction native d'Excel lance peut-être un calcul de feuille à l'issue de l'opération...

Si vous utilisez le pot de peinture du menu "Police", le calcul ne se fait pas...

Votre collègue utilise quoi pour colorer ses cellules ?

@ bientôt

LouReeD

En plein dans le mille @Loureed!

Mon confrère de travail n'utilise pas la même méthode que moi pour changer la couleur d'arrière plan d'une cellule.

Merci beaucoup de votre aide, elle est très appréciée!

Bonsoir,

merci de vos remerciements !

Cela va droit dans le mille !

@ bientôt

LouReeD

Rechercher des sujets similaires à "rafraichir ecran"