les macros

nono

XLDnaute Nouveau
bonjour,
j ai quelques petits soucis avec les macros
je pense en avoir cree une bien mais elle ne fonctionne pas.
quelqu un peut il me dire l erreure ?

Le but de cette macro est de metre des couleurs a des ovales suivant le resultat de cellules.
regarde :

Sub Macro()
If [L:L] <= 1 Then
ActivateSheet.Shapes("Oval1").Fill.ForeColor.SchemeColor = 4
ActivateSheet.Shapes("Oval1").Fill.Visible = msoTrue
Else
ActivateSheet.Shapes("Oval1").Fill.Visible = msoFalse
End If
If [L:L] >= 3 <=17 Then
ActivateSheet.Shapes("Oval1").Fill.ForeColor.SchemeColor = 41
ActivateSheet.Shapes("Oval1").Fill.Visible = msoTrue
Else
ActivateSheet.Shapes("Oval1").Fill.Visible = msoFalse
End If
If [L:L] >= 25 <= 50 Then
ActivateSheet.Shapes("Oval1").Fill.ForeColor.SchemeColor = 27
ActivateSheet.Shapes("Oval1").Fill.Visible = msoTrue
Else
ActivateSheet.Shapes("Oval1").Fill.Visible = msoFalse
End If
If [L:L] >= 51 <= 80 Then
ActivateSheet.Shapes("Oval1").Fill.ForeColor.SchemeColor = 46
ActivateSheet.Shapes("Oval1").Fill.Visible = msoTrue
Else
ActivateSheet.Shapes("Oval1").Fill.Visible = msoFalse
End If
If [L:L] >= 81 Then
ActivateSheet.Shapes("Oval1").Fill.ForeColor.SchemeColor = 3
ActivateSheet.Shapes("Oval1").Fille.Visible = msoTrue
End If
End Sub

Merci a celui ou celles qui me repondra.

Arnaud.
 

phlaurent55

Nous a quittés en 2020
Repose en paix
Re : les macros

Bonjour nono et bienvenue sur le forum

If [L:L] <= 1 Then <---------- je doute que cela puisse fonctionner car tu testes la colonne entière

If [L:L] >= 3 <=17 Then <--------- ceci n'est pas correct

If [L1]>=3 And [L1]<=17 Then serait plus approprié dans le cas où tu testes la valeur de la cellule L1

à+
Philippe
 

nono

XLDnaute Nouveau
Re : les macros

J ai pourtant bien tout corrige mais rien a faire, je n arrive toujours pas a la faire marcher ...

Sub Color_oval()
If [L2] <= 1 Then
ActiveSheet.Shapes("Oval1").Fill.ForeColor.SchemeColor = 4
ActiveSheet.Shapes("Oval1").Fill.Visible = msoTrue
Else
ActiveSheet.Shapes("Oval1").Fill.Visible = msoFalse
End If
If [L2] >= 3 And [L2] <= 17 Then
ActiveSheet.Shapes("Oval1").Fill.ForeColor.SchemeColor = 41
ActiveSheet.Shapes("Oval1").Fill.Visible = msoTrue
Else
ActiveSheet.Shapes("Oval1").Fill.Visible = msoFalse
End If
If [L2] >= 25 And [L2] <= 50 Then
ActiveSheet.Shapes("Oval1").Fill.ForeColor.SchemeColor = 27
ActiveSheet.Shapes("Oval1").Fill.Visible = msoTrue
Else
ActiveSheet.Shapes("Oval1").Fill.Visible = msoFalse
End If
If [L2] >= 51 And [L2] <= 80 Then
ActiveSheet.Shapes("Oval1").Fill.ForeColor.SchemeColor = 46
ActiveSheet.Shapes("Oval1").Fill.Visible = msoTrue
Else
ActiveSheet.Shapes("Oval1").Fill.Visible = msoFalse
End If
If [L2] >= 81 Then
ActiveSheet.Shapes("Oval1").Fill.ForeColor.SchemeColor = 3
ActiveSheet.Shapes("Oval1").Fille.Visible = msoTrue
End If
End Sub
 

chris

XLDnaute Barbatruc
Re : les macros

Re

Je n'arrive pas à la faire marcher est vague : message d'erreur ? Autre ?

Code:
Sub Color_oval()

ActiveSheet.Shapes("Oval1").Fill.Visible = msoFalse
Select Case Range("L2")
     Case Is <= 1
        ActiveSheet.Shapes("Oval1").Fill.ForeColor.SchemeColor = 4
        ActiveSheet.Shapes("Oval1").Fill.Visible = msoTrue
    Case 3 To 17
        ActiveSheet.Shapes("Oval1").Fill.ForeColor.SchemeColor = 41
        ActiveSheet.Shapes("Oval1").Fill.Visible = msoTrue
    Case 25 To 50
        ActiveSheet.Shapes("Oval1").Fill.ForeColor.SchemeColor = 27
        ActiveSheet.Shapes("Oval1").Fill.Visible = msoTrue
    Case 51 To 80
        ActiveSheet.Shapes("Oval1").Fill.ForeColor.SchemeColor = 46
        ActiveSheet.Shapes("Oval1").Fill.Visible = msoTrue
    Case Is >= 81
        ActiveSheet.Shapes("Oval1").Fill.ForeColor.SchemeColor = 3
        ActiveSheet.Shapes("Oval1").Fill.Visible = msoTrue
    End Select
End Sub

si j'ai bien compris
 

nono

XLDnaute Nouveau
Re : les macros

Alors un fois que je met "run" donc une fois que je le lance je recois directement le message suivant ;
- Run time error `-2147024809, The item with specified name wasn t found..
Donc je ne comprend pas trop ce qui cloche

Merci pour votre aide et votre temps.
 

phlaurent55

Nous a quittés en 2020
Repose en paix
Re : les macros

Re,

s'il s'agit de créer un indicateur visuel .......... (couleur en fonction de la valeur d'une cellule) il est plus facile de le faire avec une MFC

voir fichier joint

à+
Philippe
 

Pièces jointes

  • 111.xlsx
    12.8 KB · Affichages: 19
  • 111.xlsx
    12.8 KB · Affichages: 19
  • 111.xlsx
    12.8 KB · Affichages: 21

nono

XLDnaute Nouveau
Re : les macros

Cela parait plutot cool meme si je ne comprend pas tres bien comment vous arrivez a faire ca.
cependant les couleurs doivent s appliquer a des figures qui sont des ovals que j ai moi meme creer sur une image.
De ce fait jamais je ne pourrais appliquer la couleur a mes ovales... :/
 

Statistiques des forums

Discussions
312 294
Messages
2 086 896
Membres
103 404
dernier inscrit
sultan87