Actualisation d'une feuille par une macro si feuille non active

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

secafreefr

XLDnaute Nouveau
Bonjour,

Je vous ai joint une exemple simple de mon prb.
j'ai fait une macro qui permet d'assigner une couleur suivant le resultat sur ma feuille de "résultat", malheureusement lorsque j'actualise ma feuille de "donnée" la macro ne marche pas toute seule, il faut que je revalide la case pour que l'action de la macro fonctionne.
Auriez vous une solution pour que cela se face automatiquement ? ou au pire associer un bouton pour lancer la procedure sur la feuille "résultat"

Merci pour vos aides

Cdt,

pour aller plus vite aussi voila la macro:

Private Sub Worksheet_Change(ByVal Target As Range)

If Not Intersect(Target, Range("C4: D10")) Is Nothing Then
For Each cell In Target
If cell.Value = "0" Then
cell.Interior.ColorIndex = 36
ElseIf cell.Value = "1" Then
cell.Interior.ColorIndex = 30
ElseIf cell.Value > "1" Then
cell.Interior.ColorIndex = 4
End If
Next
End If

'If Not Intersect(Target, Range("C4: D10")) Is Nothing Then
' For Each cell In Target
' If cell.Value = "0" Then
' Calculate
' ElseIf cell.Value = "1" Then
' Calculate
' ElseIf cell.Value > "1" Then
' Calculate
' End If
' Next
'End If

End Sub
 

Pièces jointes

Re : Actualisation d'une feuille par une macro si feuille non active

Bonjour secafreefr,

bienvenue sur XLD,

un essai (à la place du code existant) :

Code:
Private Sub Worksheet_Calculate()
    For Each cell In Range("C4:D10")
        If cell.Value = "0" Then
            cell.Interior.ColorIndex = 36
        ElseIf cell.Value = "1" Then
            cell.Interior.ColorIndex = 30
        ElseIf cell.Value > "1" Then
            cell.Interior.ColorIndex = 4
        End If
    Next
End Sub
 
Re : Actualisation d'une feuille par une macro si feuille non active

Bonjour, oui bienvenue sur XLD

@secafreefr, pourquoi pas une mise en forme Conditionnelle?
Ce serait toujours mieux qu'une macro.

A+
Bonjour Tototiti
 
Re : Actualisation d'une feuille par une macro si feuille non active

Merci pour la réponse aussi rapide et oui c'est exactement se que je voulais...cela marche trés bien merci pour l'aide.
Pour repondre pourquoi pas un formatage conditionnel simplement car pour des raisons pratique je dois passer sous excel 2003 et sous excel 2003 il n'y a pas possibilité de faire trop de condition alors qu'avec la macro je pourrais attribuer plus de possibilité pour la couleur et de plus c'est plus facile d'attribuer une zone que de faire à chaque cellule.

Cdt,

PS: Merci pour le bien venu... 😀
 
Re : Actualisation d'une feuille par une macro si feuille non active

juste une derniere petite remarque...
En effet sur mon exemple cela aurait été facile de faire une Mise en Forme Conditionnel....mais je n'ai jamais dit que l'exemple été le tableau définitif.... cela comporte beaucoup plus de tableau et d'évolution futur ds cas réél à detecter...
Et de plus de mémoire Excel 2003 ne dépasse pas 3 tests conditionnel se que je compte bien dépasser...(Excel 2003 imposé par la boite..)
Et une raison de plus c'est qu'il faut bien faire son premier pas en VBA...cela peut servir...

Cdt,

merci encore pour tous
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

  • Question Question
Microsoft 365 Probléme VBA
Réponses
8
Affichages
588
Réponses
9
Affichages
508
Retour