[VBA] Cellule Range ...
Résolu
Didoch54000
Messages postés
308
Date d'inscription
Statut
Membre
Dernière intervention
-
Didoch54000 Messages postés 308 Date d'inscription Statut Membre Dernière intervention -
Didoch54000 Messages postés 308 Date d'inscription Statut Membre Dernière intervention -
A voir également:
- [VBA] Cellule Range ...
- Excel compter cellule couleur sans vba - Guide
- Excel cellule couleur si condition texte - Guide
- Proteger cellule excel - Guide
- Excel si cellule contient partie texte ✓ - Forum Excel
- Out of range écran - Forum Ecran
3 réponses
Bonjour
Si j'ai bien compris:
(J'ai changé row en Rangée, car row est un mot réservé vba)
Bonne suite
Si j'ai bien compris:
Function boucle(Plage) For Each Rangée In Plage.Rows MsgBox Application.WorksheetFunction.Min(Range(Rangée.Address)) Next End Function
(J'ai changé row en Rangée, car row est un mot réservé vba)
Bonne suite
Oui un grand merci à toi (ca fait un jour et demi que je cherche.).
Juste une question comment faire pour 'colorier' la cellule qui contient la valeur min et max j'avais pensé à ca :
A ton avis il est préférable de faire une nouvelle boucle qui test la valeur (il peut y avoir deux cellules qui contiennent min ou max si les valeurs sont identiques) ou y a t-il mieux.
Merci encore pour ta réponse et ton aide.
Juste une question comment faire pour 'colorier' la cellule qui contient la valeur min et max j'avais pensé à ca :
Function boucle(Plage) For Each Rangée In Plage.Rows MinVal = Application.WorksheetFunction.Min(Range(Rangée.Address)) MaxVal =Application.WorksheetFunction.Max(Range(Rangée.Address)) ' If cell.Value = MinVal Then cell.Interior.Color = vbGreen ' If cell.Value = MaxVal Then cell.Interior.Color = vbRed Next End Function
A ton avis il est préférable de faire une nouvelle boucle qui test la valeur (il peut y avoir deux cellules qui contiennent min ou max si les valeurs sont identiques) ou y a t-il mieux.
Merci encore pour ta réponse et ton aide.
re
Application.WorksheetFunction.Min ne permet pas de déterminer quelle cellule contient le min (ou le max) on ne peut donc pas modifier la couleur( et encore moins si plusieurs cellules contiennent le min).
Une proposition qui n'est sans doute pas la meilleurs, mais qui fonctionne
Application.WorksheetFunction.Min ne permet pas de déterminer quelle cellule contient le min (ou le max) on ne peut donc pas modifier la couleur( et encore moins si plusieurs cellules contiennent le min).
Une proposition qui n'est sans doute pas la meilleurs, mais qui fonctionne
For Each Rangée In Plage.Rows MinVal = Application.WorksheetFunction.Min(Range(Rangée.Address)) MaxVal = Application.WorksheetFunction.Max(Range(Rangée.Address)) For Each cel In Rangée.Cells If Val(cel.Value) = MinVal Then cel.Interior.Color = vbGreen End If If Val(cel.Value) = MaxVal Then cel.Interior.Color = vbRed End If Next NextBonne suite
Merci beaucoup c'est que j'ai finis par faire je regarde pour optimiser le code car si le tab fait plusieurs millier de ligne ca va chauffer .
Je vais m'orienter du coté de la macro automatique pour alleger le code:
en tout cas merci pour ta dispo et tes réponses.
Je vais m'orienter du coté de la macro automatique pour alleger le code:
Range("C5:AM5").Select Selection.FormatConditions.Add Type:=xlExpression, Formula1:= _ "=C5=MIN($C$5:$AM$5)" Selection.FormatConditions(Selection.FormatConditions.Count).SetFirstPriority With Selection.FormatConditions(1).Interior .PatternColorIndex = xlAutomatic .Color = 255 .TintAndShade = 0 End With
en tout cas merci pour ta dispo et tes réponses.