Une macro qui ne marche pas terrible avec des cellules fusionnées

Magic_Doctor

XLDnaute Barbatruc
Bonjour,

J'ai une macro événementielle qui utilise plusieurs fonctions.
Si je rentre dans une cellule assujettie à la macro événementielle une valeur supérieure à une valeur limite définie dans la feuille, alors la cellule qui est immédiatement à sa gauche se met à clignoter affichant brièvement la valeur limite qui ne peut être dépassée.
Ça marche bien à condition que la cellule qui clignote soit unique. Si cette cellule est un ensemble de cellules fusionnées, alors ça bloque.
Comment faire en sorte que ça marche que ce soit pour une unique cellule ou des cellules fusionnées ?

Merci pour tout commentaire.
 

Pièces jointes

  • Cellules Fusionnées.xlsm
    21.4 KB · Affichages: 34
Dernière édition:

Lone-wolf

XLDnaute Barbatruc
Re : Une macro qui ne marche pas terrible avec des cellules fusionnées

Bonjour Magic Doctor :)

Après avoir fusionné les cellules(en exemple), j'ai modifié l'évenement comme ceci et la cellule clignote sans problème.

Code:
Private Sub Worksheet_Change(ByVal target As Range)
    If Not Intersect(target, Range("e6, f6, g6")) Is Nothing Then '--> "UY désirées"    
        If target > [F4] Then ControlEntrada target, "Maximum = " & [F4]   
    End If
    target.Select
End Sub
 

mapomme

XLDnaute Barbatruc
Supporter XLD
Re : Une macro qui ne marche pas terrible avec des cellules fusionnées

Bonsoir Magic_Doctor,

Remplacer dans le code cel par cel.MergeArea

Edit: Bonsoir Lone-wolf
 

Pièces jointes

  • Magic_Doctor- Cellules Fusionnées- v1.xlsm
    21.7 KB · Affichages: 34
Dernière édition:

Lone-wolf

XLDnaute Barbatruc
Re : Une macro qui ne marche pas terrible avec des cellules fusionnées

Re

désolé pour l'incompréhension. Voici le fichier avec les cellules clignotantes fusionnées. Il fallait ajouter aussi for each cel dans le module.

Bonsoir mapomme :)
 

Pièces jointes

  • Copie de Cellules Fusionnées.xlsm
    21.6 KB · Affichages: 28

Magic_Doctor

XLDnaute Barbatruc
Re : Une macro qui ne marche pas terrible avec des cellules fusionnées

Bonsoir mapomme,

Pas rafraîchi l'écran...

Je me doutais bien que c'était un truc de ce genre, mais j'avais totalement oublié la syntaxe.
Maintenant, ça marche très bien.

Comme quoi, parfois le clignotement peut être utile sans être agaçant.

Bonne soirée.

PS : en PJ la même version que mapomme + 2 bricoles visuelles.
 

Pièces jointes

  • Cellules Fusionnées OK.xlsm
    21.4 KB · Affichages: 27

Magic_Doctor

XLDnaute Barbatruc
Re : Une macro qui ne marche pas terrible avec des cellules fusionnées

¡Caramba! Je m'étais enthousiasmé.

J'ai fait quelques modifications, mais...uniquement pour les cellules fusionnées (sinon ça marche) :
Quand la valeur est supérieure à la valeur limite, les cellules fusionnées n'affichaient pas la sentence --> réparé
En revanche, quand le clignotement cesse, il m'est impossible de récupérer la valeur initiale de la cellule clignotante, à savoir "Ma valeur".

Comment s'y prendre ?
 

Pièces jointes

  • Cellules Fusionnées PasToutAFaitOK.xlsm
    22.4 KB · Affichages: 43
Dernière édition:

eriiic

XLDnaute Barbatruc
Re : Une macro qui ne marche pas terrible avec des cellules fusionnées

Bonjour,

Code:
Sub ControlEntrada(cel As Range, mefi As String, Optional x As Byte = 1)
    ...
    Set celda = cel.Offset(, -1).MergeArea.Range("A1") 'cellule immédiatement à gauche de la cellule "cel"
eric
 

Magic_Doctor

XLDnaute Barbatruc
Re : Une macro qui ne marche pas terrible avec des cellules fusionnées

Bonsoir eriiiic,

Je viens d'essayer, en tout cas chez moi ça ne marche pas. Dans l'intitulé reste affiché la sentence après clignotement et non pas le libellé normal de l'intitulé : "Ma valeur".
À tout hasard, j'ai essayé :
Code:
Set celda = cel.Offset(, -1).MergeArea
ça plante.

Mais je n'ai pas compris .Range("A1") après "MergeArea".
 

Magic_Doctor

XLDnaute Barbatruc
Re : Une macro qui ne marche pas terrible avec des cellules fusionnées

Bon, j'ai été inspiré. J'ai fini par faire en sorte pour que ça marche. C'est nettement plus tordu que ce que je pensais... Mais ce fut quand même intéressant.
 

Pièces jointes

  • Cellules Fusionnées NormalementOK.xlsm
    22.9 KB · Affichages: 31
Dernière édition:

eriiic

XLDnaute Barbatruc
Re : Une macro qui ne marche pas terrible avec des cellules fusionnées

Bonjour,

Bizarre, ça fonctionnait bien chez moi. Qq chose que je n'ai pas compris dans ta demande ?
 

Pièces jointes

  • Cellules Fusionnées PasToutAFaitOK.xlsm
    22.7 KB · Affichages: 28

Magic_Doctor

XLDnaute Barbatruc
Re : Une macro qui ne marche pas terrible avec des cellules fusionnées

Bonjour,

C'est curieux, je viens de réessayer ta solution et maintenant ça marche correctement. Qu'est-ce qui s'est passé ?
Donc, pour résoudre ce problème (comme d'autres), on peut y arriver par différents moyens.
Ça m'aura permis de mieux comprendre "MergeArea".
En revanche, je n'ai pas compris :
Code:
 Set celda = cel.Offset(, -1).MergeArea.Range("A1")
De mon côté, j'ai résolu le problème en comprenant qu'il fallait mettre une valeur dans la 1ère cellule d'une plage.

En tout cas, merci pour ton aide.

Bonne journée.
 

Magic_Doctor

XLDnaute Barbatruc
Re : Une macro qui ne marche pas terrible avec des cellules fusionnées

Re,

C'est curieux, dans mon esprit .Range("A1") représente la 1ère cellule de la feuille, mais ça pourrait aussi être la 1ere cellule d'une plage de cellules (en l'occurrence fusionnées) quelle qu'elle soit. Si c'est bien le cas, je ne savais pas.
Une chose est certaine, les cellules fusionnées --> bordel. Mais parfois on ne peut pas faire autrement...
 
Dernière édition:

Discussions similaires

Statistiques des forums

Discussions
314 203
Messages
2 107 178
Membres
109 773
dernier inscrit
sablin