Dans Feuil1 j’ai les Range lig et col ( nous avons également la remarquable
palette de GeeDee 1596 couleurs )
Dans la Feuil1 j’ai également un groupe de formes nommé groupe
Dans la Feuil2 nommée MosaiqueJPV j’ai un groupe de formes nommé Groupe clair
Pourquoi ma macro se plante sur Groupe clair alors qu’elle fonctionne sur
groupe :
Sub Colorerclair()
Dim ligne As Long, colonne As Long
ligne = [lig]: colonne = [col]
Worksheets("Feuil1").Shapes("groupe").OLEFormat.Object.Interior.ColorIndex =
ligne 'fontionne !
Worksheets("Feuil1").Shapes("groupe").OLEFormat.Object.Interior.Pattern
= xlPatternGray50 'fontionne !
' Worksheets("Feuil2").Shapes("Groupe
clair").OLEFormat.Object.Interior.ColorIndex = ligne 'ne marche pas
' Worksheets("Feuil2").Shapes("Groupe
clair").OLEFormat.Object.Interior.Pattern = xlPatternGray50 'ne marche pas
' Worksheets("Feuil2").Shapes("Groupe
clair").OLEFormat.Object.Interior.PatternColorIndex = colonne 'ne marche pas
Worksheets("MosaiqueJPV").Shapes("Groupe
clair").OLEFormat.Object.Interior.ColorIndex = ligne 'ne marche pas mieux
Worksheets("MosaiqueJPV").Shapes("Groupe
clair").OLEFormat.Object.Interior.Pattern = xlPatternGray50 'ne marche pas
Worksheets("MosaiqueJPV").Shapes("Groupe
clair").OLEFormat.Object.Interior.PatternColorIndex = colonne 'ne marche pas
End Sub
Avec Feuil2…. j’ai le message d’erreur ‘’L’indice n’appartient pas à la
sélection’’
Avec MosaiqueJPV…’’Impossible de définir la propriété ColorIndex de la
classe Interior
| mais tu aura quand meme remarqué que : | .Shapes.Range("Groupe clair").Fill.ForeColor.SchemeColor = 10
Oui en faisant un test.... mais c'est la première fois que j'entends celle-là : N°SchemeColor = N°ColorIndex + 7
Évidemment, je n'ai pas d'explications ! Merci de l'avoir signalé.
Avec SchemeColor on peut utiliser un index entre 0 et 80 inclusivement. Ceci ne signifie pas qu'elle affiche autant de couleurs différentes !
| ForeColor.RGB = RGB(xxx,yyy,zzz) | n'affiche pas necessairement la couleur RGB attendue
Cela est de la vieille histoire ! Non ?
"Modeste" a écrit dans le message de news: OEv$dfm% Bonsour® michdenis avec ferveur ;o))) vous nous disiez :
N°SchemeColor = N°ColorIndex + 7
Ce que tu énonces, Est-ce une vérité de la palice ? ou d'un gars qui a pris quelques verres de vin en soupant ? ;-))
Non en tant que ch'timi, mi j'carbure al'bière !!! Même que y a deux jours j'ai sifflé une "Maudite" mais je ne trouve nin dans min coin de l'blanche de Chambly :-( Le rouge le laisse volontier à notre banni de beaujoleux ;o)))
Santé à tout deux ;o)))
mais tu aura quand meme remarqué que : .Shapes.Range("Groupe clair").Fill.ForeColor.SchemeColor = 10 et ActiveCell.Interior.ColorIndex=3 sont bien rouge toutes les deux !!! et ce 7 d'écart n'est signalé nulle part et que les SchemeColor de 1 à 7 semblent ignorés
et que par ailleurs .Shapes.Range("Groupe clair").Fill.ForeColor.RGB = RGB(xxx,yyy,zzz) n'affiche pas necessairement la couleur RGB attendue mais la couleur associée au ColorIndex approchant en luminosité selon la codification HSL
-- -- @+ ;o)))
| mais tu aura quand meme remarqué que :
| .Shapes.Range("Groupe clair").Fill.ForeColor.SchemeColor = 10
Oui en faisant un test.... mais c'est la première fois que j'entends
celle-là :
N°SchemeColor = N°ColorIndex + 7
Évidemment, je n'ai pas d'explications !
Merci de l'avoir signalé.
Avec SchemeColor on peut utiliser un index entre 0 et 80 inclusivement.
Ceci ne signifie pas qu'elle affiche autant de couleurs différentes !
| ForeColor.RGB = RGB(xxx,yyy,zzz)
| n'affiche pas necessairement la couleur RGB attendue
Cela est de la vieille histoire ! Non ?
"Modeste" <nomail@nomail.net> a écrit dans le message de news:
OEv$dfm%23IHA.1016@TK2MSFTNGP03.phx.gbl...
Bonsour® michdenis avec ferveur ;o))) vous nous disiez :
N°SchemeColor = N°ColorIndex + 7
Ce que tu énonces, Est-ce une vérité de la palice ?
ou d'un gars qui a pris quelques verres de vin en soupant ?
;-))
Non en tant que ch'timi, mi j'carbure al'bière !!!
Même que y a deux jours j'ai sifflé une "Maudite"
mais je ne trouve nin dans min coin de l'blanche de Chambly
:-(
Le rouge le laisse volontier à notre banni de beaujoleux
;o)))
Santé à tout deux ;o)))
mais tu aura quand meme remarqué que :
.Shapes.Range("Groupe clair").Fill.ForeColor.SchemeColor = 10
et
ActiveCell.Interior.ColorIndex=3
sont bien rouge toutes les deux !!!
et ce 7 d'écart n'est signalé nulle part
et que les SchemeColor de 1 à 7 semblent ignorés
et que par ailleurs
.Shapes.Range("Groupe clair").Fill.ForeColor.RGB = RGB(xxx,yyy,zzz)
n'affiche pas necessairement la couleur RGB attendue
mais la couleur associée au ColorIndex approchant en luminosité selon la
codification HSL
| mais tu aura quand meme remarqué que : | .Shapes.Range("Groupe clair").Fill.ForeColor.SchemeColor = 10
Oui en faisant un test.... mais c'est la première fois que j'entends celle-là : N°SchemeColor = N°ColorIndex + 7
Évidemment, je n'ai pas d'explications ! Merci de l'avoir signalé.
Avec SchemeColor on peut utiliser un index entre 0 et 80 inclusivement. Ceci ne signifie pas qu'elle affiche autant de couleurs différentes !
| ForeColor.RGB = RGB(xxx,yyy,zzz) | n'affiche pas necessairement la couleur RGB attendue
Cela est de la vieille histoire ! Non ?
"Modeste" a écrit dans le message de news: OEv$dfm% Bonsour® michdenis avec ferveur ;o))) vous nous disiez :
N°SchemeColor = N°ColorIndex + 7
Ce que tu énonces, Est-ce une vérité de la palice ? ou d'un gars qui a pris quelques verres de vin en soupant ? ;-))
Non en tant que ch'timi, mi j'carbure al'bière !!! Même que y a deux jours j'ai sifflé une "Maudite" mais je ne trouve nin dans min coin de l'blanche de Chambly :-( Le rouge le laisse volontier à notre banni de beaujoleux ;o)))
Santé à tout deux ;o)))
mais tu aura quand meme remarqué que : .Shapes.Range("Groupe clair").Fill.ForeColor.SchemeColor = 10 et ActiveCell.Interior.ColorIndex=3 sont bien rouge toutes les deux !!! et ce 7 d'écart n'est signalé nulle part et que les SchemeColor de 1 à 7 semblent ignorés
et que par ailleurs .Shapes.Range("Groupe clair").Fill.ForeColor.RGB = RGB(xxx,yyy,zzz) n'affiche pas necessairement la couleur RGB attendue mais la couleur associée au ColorIndex approchant en luminosité selon la codification HSL
-- -- @+ ;o)))
Jean-Paul V
Bonjour à tous
En faisant une synthèse de michdenis et Modeste j’ai essayé : Sub Colorerclair() Dim ligne As Long, colonne As Long ligne = [lig]: colonne = [col] With Range("Cclair") .Interior.ColorIndex = ligne .Interior.Pattern = xlPatternGray50 .Interior.PatternColorIndex = colonne End With 'Solution MichDenis modifiée Modeste With Worksheets("MosaiqueJPV") .Shapes.Range("Groupeclair").Fill.ForeColor.SchemeColor = ligne 'ne donne pas la même couleur que Range("Cclair) .Shapes.Range("Groupeclair").Fill.BackColor.SchemeColor = colonne 'ne donne pas la même couleur que Range("Cclair) ' .Shapes.Range("Groupeclair").Fill.TwoColorGradient msoGradientHorizontal, 4 'dégradé ne figurant pas ds palette 1596 couleurs de GD .Shapes.Range("Groupeclair").Fill.Patterned msoPattern50Percent 'Suggestion GeeDee Modeste End With
Ça ne se plante pas mais la couleur de Range("Cclair") et de Shapes.Range("Groupeclair") n’est pas la même.
J’ai fais 2 autres essais et j’ai eu respectivement ces 2 messages d’erreur
'Autre essai JPV With Worksheets("MosaiqueJPV") .Shapes.Range("Groupeclair").Fill.ForeColor.ColorIndex = ligne 'Erreur Propriété ou méthode non géré par cet objet ! .Shapes.Range("Groupeclair").Fill.ForeColor.Pattern = xlPatternGray50 .Shapes.Range("Groupeclair").Fill.ForeColor.PatternColorIndex = colonne End With 'Autre essai JPV With Worksheets("MosaiqueJPV") .Shapes.Range("Groupeclair").Fill.ForeColor.SchemeColor.ColorIndex = ligne 'Erreur Objet requis ! .Shapes.Range("Groupeclair").Fill.ForeColor.SchemeColor.Pattern = xlPatternGray50
.Shapes.Range("Groupeclair").Fill.ForeColor.SchemeColor.PatternColorIndex = colonne End With
J'ai l'impression qu'il faut que j'abandonne l'utilisation de la palette 1596 couleurs dommage... -- Jean-Paul V
"Modeste" wrote:
Bonsour® michdenis avec ferveur ;o))) vous nous disiez :
> Utilise ceci au lieu de tes 3 lignes de code : > With Worksheets("MosaiqueJPV") > .Shapes.Range("Groupe clair").Fill.ForeColor.SchemeColor = Ligne > .Shapes.Range("Groupe clair").Fill.BackColor.SchemeColor = Colonne
c'est en effet la solution la plus rationnelle pour colorer des objets autres que des cellules. et pour avoir une similitude aux effets couleurs des cellules.
Toutefois la numérotation ColorIndex / SchemeColor n'est pas explicitement identique N°SchemeColor = N°ColorIndex + 7 mais explique également pourquoi il n'y a pas plus de (56) SchemeColor que de ColorIndex
et que en consequence il est inutile dans ce classeur (Mosaique de JeanPaul V) d'utiliser le remplissage par les 1540-1596 couleurs virtuelles simultanées. L'utilisation des palettes modifiées devrait suffir et évitera d'atteindre trop rapidement le blocage par nombre de formats trop élevés
-- @+ ;o)))
Bonjour à tous
En faisant une synthèse de michdenis et Modeste j’ai essayé :
Sub Colorerclair()
Dim ligne As Long, colonne As Long
ligne = [lig]: colonne = [col]
With Range("Cclair")
.Interior.ColorIndex = ligne
.Interior.Pattern = xlPatternGray50
.Interior.PatternColorIndex = colonne
End With
'Solution MichDenis modifiée Modeste
With Worksheets("MosaiqueJPV")
.Shapes.Range("Groupeclair").Fill.ForeColor.SchemeColor = ligne 'ne
donne pas la même couleur que Range("Cclair)
.Shapes.Range("Groupeclair").Fill.BackColor.SchemeColor = colonne 'ne
donne pas la même couleur que Range("Cclair)
' .Shapes.Range("Groupeclair").Fill.TwoColorGradient
msoGradientHorizontal, 4 'dégradé ne figurant pas ds palette 1596 couleurs de
GD
.Shapes.Range("Groupeclair").Fill.Patterned msoPattern50Percent
'Suggestion GeeDee Modeste
End With
Ça ne se plante pas mais la couleur de Range("Cclair") et de
Shapes.Range("Groupeclair") n’est pas la même.
J’ai fais 2 autres essais et j’ai eu respectivement ces 2 messages d’erreur
'Autre essai JPV
With Worksheets("MosaiqueJPV")
.Shapes.Range("Groupeclair").Fill.ForeColor.ColorIndex = ligne 'Erreur
Propriété ou méthode non géré par cet objet !
.Shapes.Range("Groupeclair").Fill.ForeColor.Pattern = xlPatternGray50
.Shapes.Range("Groupeclair").Fill.ForeColor.PatternColorIndex = colonne
End With
'Autre essai JPV
With Worksheets("MosaiqueJPV")
.Shapes.Range("Groupeclair").Fill.ForeColor.SchemeColor.ColorIndex =
ligne 'Erreur Objet requis !
.Shapes.Range("Groupeclair").Fill.ForeColor.SchemeColor.Pattern =
xlPatternGray50
.Shapes.Range("Groupeclair").Fill.ForeColor.SchemeColor.PatternColorIndex =
colonne
End With
J'ai l'impression qu'il faut que j'abandonne l'utilisation de la palette
1596 couleurs dommage...
--
Jean-Paul V
"Modeste" wrote:
Bonsour® michdenis avec ferveur ;o))) vous nous disiez :
> Utilise ceci au lieu de tes 3 lignes de code :
> With Worksheets("MosaiqueJPV")
> .Shapes.Range("Groupe clair").Fill.ForeColor.SchemeColor = Ligne
> .Shapes.Range("Groupe clair").Fill.BackColor.SchemeColor = Colonne
c'est en effet la solution la plus rationnelle pour colorer des objets autres que des cellules.
et pour avoir une similitude aux effets couleurs des cellules.
Toutefois la numérotation ColorIndex / SchemeColor n'est pas explicitement identique
N°SchemeColor = N°ColorIndex + 7
mais explique également pourquoi il n'y a pas plus de (56) SchemeColor que de ColorIndex
et que en consequence il est inutile dans ce classeur (Mosaique de JeanPaul V)
d'utiliser le remplissage par les 1540-1596 couleurs virtuelles simultanées.
L'utilisation des palettes modifiées devrait suffir
et évitera d'atteindre trop rapidement le blocage par nombre de formats trop élevés
En faisant une synthèse de michdenis et Modeste j’ai essayé : Sub Colorerclair() Dim ligne As Long, colonne As Long ligne = [lig]: colonne = [col] With Range("Cclair") .Interior.ColorIndex = ligne .Interior.Pattern = xlPatternGray50 .Interior.PatternColorIndex = colonne End With 'Solution MichDenis modifiée Modeste With Worksheets("MosaiqueJPV") .Shapes.Range("Groupeclair").Fill.ForeColor.SchemeColor = ligne 'ne donne pas la même couleur que Range("Cclair) .Shapes.Range("Groupeclair").Fill.BackColor.SchemeColor = colonne 'ne donne pas la même couleur que Range("Cclair) ' .Shapes.Range("Groupeclair").Fill.TwoColorGradient msoGradientHorizontal, 4 'dégradé ne figurant pas ds palette 1596 couleurs de GD .Shapes.Range("Groupeclair").Fill.Patterned msoPattern50Percent 'Suggestion GeeDee Modeste End With
Ça ne se plante pas mais la couleur de Range("Cclair") et de Shapes.Range("Groupeclair") n’est pas la même.
J’ai fais 2 autres essais et j’ai eu respectivement ces 2 messages d’erreur
'Autre essai JPV With Worksheets("MosaiqueJPV") .Shapes.Range("Groupeclair").Fill.ForeColor.ColorIndex = ligne 'Erreur Propriété ou méthode non géré par cet objet ! .Shapes.Range("Groupeclair").Fill.ForeColor.Pattern = xlPatternGray50 .Shapes.Range("Groupeclair").Fill.ForeColor.PatternColorIndex = colonne End With 'Autre essai JPV With Worksheets("MosaiqueJPV") .Shapes.Range("Groupeclair").Fill.ForeColor.SchemeColor.ColorIndex = ligne 'Erreur Objet requis ! .Shapes.Range("Groupeclair").Fill.ForeColor.SchemeColor.Pattern = xlPatternGray50
.Shapes.Range("Groupeclair").Fill.ForeColor.SchemeColor.PatternColorIndex = colonne End With
J'ai l'impression qu'il faut que j'abandonne l'utilisation de la palette 1596 couleurs dommage... -- Jean-Paul V
"Modeste" wrote:
Bonsour® michdenis avec ferveur ;o))) vous nous disiez :
> Utilise ceci au lieu de tes 3 lignes de code : > With Worksheets("MosaiqueJPV") > .Shapes.Range("Groupe clair").Fill.ForeColor.SchemeColor = Ligne > .Shapes.Range("Groupe clair").Fill.BackColor.SchemeColor = Colonne
c'est en effet la solution la plus rationnelle pour colorer des objets autres que des cellules. et pour avoir une similitude aux effets couleurs des cellules.
Toutefois la numérotation ColorIndex / SchemeColor n'est pas explicitement identique N°SchemeColor = N°ColorIndex + 7 mais explique également pourquoi il n'y a pas plus de (56) SchemeColor que de ColorIndex
et que en consequence il est inutile dans ce classeur (Mosaique de JeanPaul V) d'utiliser le remplissage par les 1540-1596 couleurs virtuelles simultanées. L'utilisation des palettes modifiées devrait suffir et évitera d'atteindre trop rapidement le blocage par nombre de formats trop élevés
Sub Colorerclair() Dim ligne As Long, colonne As Long ligne = [lig]: colonne = [col] With Range("Cclair") .Interior.ColorIndex = ligne .Interior.Pattern = xlPatternGray50 .Interior.PatternColorIndex = colonne End With With Worksheets("MosaiqueJPV") .Shapes.Range("Groupeclair").Fill.ForeColor.SchemeColor = ligne + 7 .Shapes.Range("Groupeclair").Fill.BackColor.SchemeColor = colonne + 7 .Shapes.Range("Groupeclair").Fill.Patterned msoPattern50Percent End With
Sub Colorerclair()
Dim ligne As Long, colonne As Long
ligne = [lig]: colonne = [col]
With Range("Cclair")
.Interior.ColorIndex = ligne
.Interior.Pattern = xlPatternGray50
.Interior.PatternColorIndex = colonne
End With
With Worksheets("MosaiqueJPV")
.Shapes.Range("Groupeclair").Fill.ForeColor.SchemeColor = ligne + 7
.Shapes.Range("Groupeclair").Fill.BackColor.SchemeColor = colonne + 7
.Shapes.Range("Groupeclair").Fill.Patterned msoPattern50Percent
End With
Sub Colorerclair() Dim ligne As Long, colonne As Long ligne = [lig]: colonne = [col] With Range("Cclair") .Interior.ColorIndex = ligne .Interior.Pattern = xlPatternGray50 .Interior.PatternColorIndex = colonne End With With Worksheets("MosaiqueJPV") .Shapes.Range("Groupeclair").Fill.ForeColor.SchemeColor = ligne + 7 .Shapes.Range("Groupeclair").Fill.BackColor.SchemeColor = colonne + 7 .Shapes.Range("Groupeclair").Fill.Patterned msoPattern50Percent End With
-- -- @+ ;o)))
Modeste
Bonsour® michdenis avec ferveur ;o))) vous nous disiez :
ForeColor.RGB = RGB(xxx,yyy,zzz) n'affiche pas necessairement la couleur RGB attendue
la traduction si elle fonctionne effectivement de façon injective RGB vers HSL ou HSL vers RGB
la traduction RGB1 >>> HSL >>> RGB2 ne l'est plus de façon bijective RGB1 est different de RGB2 :-(
-- -- @+ ;o)))
Jean-Paul V
Ma synthèse était incomplète, avec cette réponse ça m'a l'air d'être bon, merci et bravo pour votre aide à tous les deux !
Patience et longueur de temps font plus que force ni que rage... -- Jean-Paul V
"Jean-Paul V" wrote:
Bonjour à tous
En faisant une synthèse de michdenis et Modeste j’ai essayé : Sub Colorerclair() Dim ligne As Long, colonne As Long ligne = [lig]: colonne = [col] With Range("Cclair") .Interior.ColorIndex = ligne .Interior.Pattern = xlPatternGray50 .Interior.PatternColorIndex = colonne End With 'Solution MichDenis modifiée Modeste With Worksheets("MosaiqueJPV") .Shapes.Range("Groupeclair").Fill.ForeColor.SchemeColor = ligne 'ne donne pas la même couleur que Range("Cclair) .Shapes.Range("Groupeclair").Fill.BackColor.SchemeColor = colonne 'ne donne pas la même couleur que Range("Cclair) ' .Shapes.Range("Groupeclair").Fill.TwoColorGradient msoGradientHorizontal, 4 'dégradé ne figurant pas ds palette 1596 couleurs de GD .Shapes.Range("Groupeclair").Fill.Patterned msoPattern50Percent 'Suggestion GeeDee Modeste End With
Ça ne se plante pas mais la couleur de Range("Cclair") et de Shapes.Range("Groupeclair") n’est pas la même.
J’ai fais 2 autres essais et j’ai eu respectivement ces 2 messages d’erreur
'Autre essai JPV With Worksheets("MosaiqueJPV") .Shapes.Range("Groupeclair").Fill.ForeColor.ColorIndex = ligne 'Erreur Propriété ou méthode non géré par cet objet ! .Shapes.Range("Groupeclair").Fill.ForeColor.Pattern = xlPatternGray50 .Shapes.Range("Groupeclair").Fill.ForeColor.PatternColorIndex = colonne End With 'Autre essai JPV With Worksheets("MosaiqueJPV") .Shapes.Range("Groupeclair").Fill.ForeColor.SchemeColor.ColorIndex = ligne 'Erreur Objet requis ! .Shapes.Range("Groupeclair").Fill.ForeColor.SchemeColor.Pattern = xlPatternGray50
.Shapes.Range("Groupeclair").Fill.ForeColor.SchemeColor.PatternColorIndex = colonne End With
J'ai l'impression qu'il faut que j'abandonne l'utilisation de la palette 1596 couleurs dommage... -- Jean-Paul V
"Modeste" wrote:
> Bonsour® michdenis avec ferveur ;o))) vous nous disiez : > > > Utilise ceci au lieu de tes 3 lignes de code : > > With Worksheets("MosaiqueJPV") > > .Shapes.Range("Groupe clair").Fill.ForeColor.SchemeColor = Ligne > > .Shapes.Range("Groupe clair").Fill.BackColor.SchemeColor = Colonne > > la troisieme instruction pourrait etre : > > > .Shapes.Range("Groupe clair").Fill.Patterned msoPattern50Percent > > > End With > > c'est en effet la solution la plus rationnelle pour colorer des objets autres que des cellules. > et pour avoir une similitude aux effets couleurs des cellules. > > Toutefois la numérotation ColorIndex / SchemeColor n'est pas explicitement identique > N°SchemeColor = N°ColorIndex + 7 > mais explique également pourquoi il n'y a pas plus de (56) SchemeColor que de ColorIndex > > et que en consequence il est inutile dans ce classeur (Mosaique de JeanPaul V) > d'utiliser le remplissage par les 1540-1596 couleurs virtuelles simultanées. > L'utilisation des palettes modifiées devrait suffir > et évitera d'atteindre trop rapidement le blocage par nombre de formats trop élevés > > > -- > @+ > ;o))) > >
Ma synthèse était incomplète, avec cette réponse ça m'a l'air d'être bon,
merci et bravo pour votre aide à tous les deux !
Patience et longueur de temps font plus que force ni que rage...
--
Jean-Paul V
"Jean-Paul V" wrote:
Bonjour à tous
En faisant une synthèse de michdenis et Modeste j’ai essayé :
Sub Colorerclair()
Dim ligne As Long, colonne As Long
ligne = [lig]: colonne = [col]
With Range("Cclair")
.Interior.ColorIndex = ligne
.Interior.Pattern = xlPatternGray50
.Interior.PatternColorIndex = colonne
End With
'Solution MichDenis modifiée Modeste
With Worksheets("MosaiqueJPV")
.Shapes.Range("Groupeclair").Fill.ForeColor.SchemeColor = ligne 'ne
donne pas la même couleur que Range("Cclair)
.Shapes.Range("Groupeclair").Fill.BackColor.SchemeColor = colonne 'ne
donne pas la même couleur que Range("Cclair)
' .Shapes.Range("Groupeclair").Fill.TwoColorGradient
msoGradientHorizontal, 4 'dégradé ne figurant pas ds palette 1596 couleurs de
GD
.Shapes.Range("Groupeclair").Fill.Patterned msoPattern50Percent
'Suggestion GeeDee Modeste
End With
Ça ne se plante pas mais la couleur de Range("Cclair") et de
Shapes.Range("Groupeclair") n’est pas la même.
J’ai fais 2 autres essais et j’ai eu respectivement ces 2 messages d’erreur
'Autre essai JPV
With Worksheets("MosaiqueJPV")
.Shapes.Range("Groupeclair").Fill.ForeColor.ColorIndex = ligne 'Erreur
Propriété ou méthode non géré par cet objet !
.Shapes.Range("Groupeclair").Fill.ForeColor.Pattern = xlPatternGray50
.Shapes.Range("Groupeclair").Fill.ForeColor.PatternColorIndex = colonne
End With
'Autre essai JPV
With Worksheets("MosaiqueJPV")
.Shapes.Range("Groupeclair").Fill.ForeColor.SchemeColor.ColorIndex =
ligne 'Erreur Objet requis !
.Shapes.Range("Groupeclair").Fill.ForeColor.SchemeColor.Pattern =
xlPatternGray50
.Shapes.Range("Groupeclair").Fill.ForeColor.SchemeColor.PatternColorIndex =
colonne
End With
J'ai l'impression qu'il faut que j'abandonne l'utilisation de la palette
1596 couleurs dommage...
--
Jean-Paul V
"Modeste" wrote:
> Bonsour® michdenis avec ferveur ;o))) vous nous disiez :
>
> > Utilise ceci au lieu de tes 3 lignes de code :
> > With Worksheets("MosaiqueJPV")
> > .Shapes.Range("Groupe clair").Fill.ForeColor.SchemeColor = Ligne
> > .Shapes.Range("Groupe clair").Fill.BackColor.SchemeColor = Colonne
>
> la troisieme instruction pourrait etre :
>
> > .Shapes.Range("Groupe clair").Fill.Patterned msoPattern50Percent
>
> > End With
>
> c'est en effet la solution la plus rationnelle pour colorer des objets autres que des cellules.
> et pour avoir une similitude aux effets couleurs des cellules.
>
> Toutefois la numérotation ColorIndex / SchemeColor n'est pas explicitement identique
> N°SchemeColor = N°ColorIndex + 7
> mais explique également pourquoi il n'y a pas plus de (56) SchemeColor que de ColorIndex
>
> et que en consequence il est inutile dans ce classeur (Mosaique de JeanPaul V)
> d'utiliser le remplissage par les 1540-1596 couleurs virtuelles simultanées.
> L'utilisation des palettes modifiées devrait suffir
> et évitera d'atteindre trop rapidement le blocage par nombre de formats trop élevés
>
>
> --
> @+
> ;o)))
>
>
Ma synthèse était incomplète, avec cette réponse ça m'a l'air d'être bon, merci et bravo pour votre aide à tous les deux !
Patience et longueur de temps font plus que force ni que rage... -- Jean-Paul V
"Jean-Paul V" wrote:
Bonjour à tous
En faisant une synthèse de michdenis et Modeste j’ai essayé : Sub Colorerclair() Dim ligne As Long, colonne As Long ligne = [lig]: colonne = [col] With Range("Cclair") .Interior.ColorIndex = ligne .Interior.Pattern = xlPatternGray50 .Interior.PatternColorIndex = colonne End With 'Solution MichDenis modifiée Modeste With Worksheets("MosaiqueJPV") .Shapes.Range("Groupeclair").Fill.ForeColor.SchemeColor = ligne 'ne donne pas la même couleur que Range("Cclair) .Shapes.Range("Groupeclair").Fill.BackColor.SchemeColor = colonne 'ne donne pas la même couleur que Range("Cclair) ' .Shapes.Range("Groupeclair").Fill.TwoColorGradient msoGradientHorizontal, 4 'dégradé ne figurant pas ds palette 1596 couleurs de GD .Shapes.Range("Groupeclair").Fill.Patterned msoPattern50Percent 'Suggestion GeeDee Modeste End With
Ça ne se plante pas mais la couleur de Range("Cclair") et de Shapes.Range("Groupeclair") n’est pas la même.
J’ai fais 2 autres essais et j’ai eu respectivement ces 2 messages d’erreur
'Autre essai JPV With Worksheets("MosaiqueJPV") .Shapes.Range("Groupeclair").Fill.ForeColor.ColorIndex = ligne 'Erreur Propriété ou méthode non géré par cet objet ! .Shapes.Range("Groupeclair").Fill.ForeColor.Pattern = xlPatternGray50 .Shapes.Range("Groupeclair").Fill.ForeColor.PatternColorIndex = colonne End With 'Autre essai JPV With Worksheets("MosaiqueJPV") .Shapes.Range("Groupeclair").Fill.ForeColor.SchemeColor.ColorIndex = ligne 'Erreur Objet requis ! .Shapes.Range("Groupeclair").Fill.ForeColor.SchemeColor.Pattern = xlPatternGray50
.Shapes.Range("Groupeclair").Fill.ForeColor.SchemeColor.PatternColorIndex = colonne End With
J'ai l'impression qu'il faut que j'abandonne l'utilisation de la palette 1596 couleurs dommage... -- Jean-Paul V
"Modeste" wrote:
> Bonsour® michdenis avec ferveur ;o))) vous nous disiez : > > > Utilise ceci au lieu de tes 3 lignes de code : > > With Worksheets("MosaiqueJPV") > > .Shapes.Range("Groupe clair").Fill.ForeColor.SchemeColor = Ligne > > .Shapes.Range("Groupe clair").Fill.BackColor.SchemeColor = Colonne > > la troisieme instruction pourrait etre : > > > .Shapes.Range("Groupe clair").Fill.Patterned msoPattern50Percent > > > End With > > c'est en effet la solution la plus rationnelle pour colorer des objets autres que des cellules. > et pour avoir une similitude aux effets couleurs des cellules. > > Toutefois la numérotation ColorIndex / SchemeColor n'est pas explicitement identique > N°SchemeColor = N°ColorIndex + 7 > mais explique également pourquoi il n'y a pas plus de (56) SchemeColor que de ColorIndex > > et que en consequence il est inutile dans ce classeur (Mosaique de JeanPaul V) > d'utiliser le remplissage par les 1540-1596 couleurs virtuelles simultanées. > L'utilisation des palettes modifiées devrait suffir > et évitera d'atteindre trop rapidement le blocage par nombre de formats trop élevés > > > -- > @+ > ;o))) > >
Modeste
Bonsour® michdenis avec ferveur ;o))) vous nous disiez :
quid des RGB/SchemeColor 0 Ã 7 ????????? et 64 Ã 80 ????????
Sub Macro1() Sheets.Add [A1] = "ColorIndex" [B1] = "Couleur cellule" [C1] = "RGB cellule" [D1] = "SchemeColor" [E1] = "RGB Shape" On Error Resume Next For i = 1 To 80 Cells(i + 1, 1) = i Cells(i + 1, 4) = i ActiveSheet.Shapes.AddShape(msoShapeRectangle, Cells(i + 1, 4).Left, Cells(i + 1, 4).Top, 12, 12). _ Select Selection.ShapeRange.Fill.ForeColor.SchemeColor = i Cells(i + 1, 5) = Selection.Interior.Color Cells(i + 1, 2).Interior.ColorIndex = i Cells(i + 1, 3) = Cells(i + 1, 2).Interior.Color Next End Sub
-- @+ ;o)))
michdenis
À partir de ta procédure... quelques observations :
Si tu fais un filtre élaboré sans doublons sur les colonnes Rgb Cellule et Rgb Shapes à tour de rôle, tu constateras que chacune des colonnes n'affiche que 46 valeurs différentes.(Pourquoi 46 au lieu de 56 ?)
En fait, dans la colonne C, il n'y a que 46 entrées correspondantes en Colonne E. L'inverse est aussi vrai, 46 entrées de la colonne E ont une correspondance en colonne C
Le pourquoi ? Je me sens pas l'âme d'un colombo aujourd'hui ! Le soleil est au rendez-vous.
Salutations.
"Modeste" a écrit dans le message de news: OrHqX6s% Bonsour® michdenis avec ferveur ;o))) vous nous disiez :
Avec SchemeColor on peut utiliser un index entre 0 et 80 inclusivement. Ceci ne signifie pas qu'elle affiche autant de couleurs différentes !
comme signalé ShapeRange.Fill.Solid on n'affiche au plus que les 56 couleurs de la palette courante (standard ou modifiée) nonobstant les Pattern ou gradients
quid des RGB/SchemeColor 0 à 7 ????????? et 64 à 80 ????????
Sub Macro1() Sheets.Add [A1] = "ColorIndex" [B1] = "Couleur cellule" [C1] = "RGB cellule" [D1] = "SchemeColor" [E1] = "RGB Shape" On Error Resume Next For i = 1 To 80 Cells(i + 1, 1) = i Cells(i + 1, 4) = i ActiveSheet.Shapes.AddShape(msoShapeRectangle, Cells(i + 1, 4).Left, Cells(i + 1, 4).Top, 12, 12). _ Select Selection.ShapeRange.Fill.ForeColor.SchemeColor = i Cells(i + 1, 5) = Selection.Interior.Color Cells(i + 1, 2).Interior.ColorIndex = i Cells(i + 1, 3) = Cells(i + 1, 2).Interior.Color Next End Sub
-- @+ ;o)))
À partir de ta procédure... quelques observations :
Si tu fais un filtre élaboré sans doublons sur les colonnes
Rgb Cellule et Rgb Shapes à tour de rôle, tu constateras
que chacune des colonnes n'affiche que 46 valeurs
différentes.(Pourquoi 46 au lieu de 56 ?)
En fait, dans la colonne C, il n'y a que 46 entrées correspondantes
en Colonne E. L'inverse est aussi vrai, 46 entrées de la colonne E
ont une correspondance en colonne C
Le pourquoi ? Je me sens pas l'âme d'un colombo aujourd'hui !
Le soleil est au rendez-vous.
Salutations.
"Modeste" <nomail@nomail.net> a écrit dans le message de news:
OrHqX6s%23IHA.3344@TK2MSFTNGP04.phx.gbl...
Bonsour® michdenis avec ferveur ;o))) vous nous disiez :
Avec SchemeColor on peut utiliser un index entre 0 et 80
inclusivement. Ceci ne signifie pas qu'elle affiche autant de
couleurs différentes !
comme signalé
ShapeRange.Fill.Solid
on n'affiche au plus que les 56 couleurs de la palette courante
(standard ou modifiée)
nonobstant les Pattern ou gradients
quid des RGB/SchemeColor 0 à 7 ?????????
et 64 à 80 ????????
Sub Macro1()
Sheets.Add
[A1] = "ColorIndex"
[B1] = "Couleur cellule"
[C1] = "RGB cellule"
[D1] = "SchemeColor"
[E1] = "RGB Shape"
On Error Resume Next
For i = 1 To 80
Cells(i + 1, 1) = i
Cells(i + 1, 4) = i
ActiveSheet.Shapes.AddShape(msoShapeRectangle, Cells(i + 1, 4).Left, Cells(i
+ 1, 4).Top, 12, 12). _
Select
Selection.ShapeRange.Fill.ForeColor.SchemeColor = i
Cells(i + 1, 5) = Selection.Interior.Color
Cells(i + 1, 2).Interior.ColorIndex = i
Cells(i + 1, 3) = Cells(i + 1, 2).Interior.Color
Next
End Sub
À partir de ta procédure... quelques observations :
Si tu fais un filtre élaboré sans doublons sur les colonnes Rgb Cellule et Rgb Shapes à tour de rôle, tu constateras que chacune des colonnes n'affiche que 46 valeurs différentes.(Pourquoi 46 au lieu de 56 ?)
En fait, dans la colonne C, il n'y a que 46 entrées correspondantes en Colonne E. L'inverse est aussi vrai, 46 entrées de la colonne E ont une correspondance en colonne C
Le pourquoi ? Je me sens pas l'âme d'un colombo aujourd'hui ! Le soleil est au rendez-vous.
Salutations.
"Modeste" a écrit dans le message de news: OrHqX6s% Bonsour® michdenis avec ferveur ;o))) vous nous disiez :
Avec SchemeColor on peut utiliser un index entre 0 et 80 inclusivement. Ceci ne signifie pas qu'elle affiche autant de couleurs différentes !
comme signalé ShapeRange.Fill.Solid on n'affiche au plus que les 56 couleurs de la palette courante (standard ou modifiée) nonobstant les Pattern ou gradients
quid des RGB/SchemeColor 0 à 7 ????????? et 64 à 80 ????????
Sub Macro1() Sheets.Add [A1] = "ColorIndex" [B1] = "Couleur cellule" [C1] = "RGB cellule" [D1] = "SchemeColor" [E1] = "RGB Shape" On Error Resume Next For i = 1 To 80 Cells(i + 1, 1) = i Cells(i + 1, 4) = i ActiveSheet.Shapes.AddShape(msoShapeRectangle, Cells(i + 1, 4).Left, Cells(i + 1, 4).Top, 12, 12). _ Select Selection.ShapeRange.Fill.ForeColor.SchemeColor = i Cells(i + 1, 5) = Selection.Interior.Color Cells(i + 1, 2).Interior.ColorIndex = i Cells(i + 1, 3) = Cells(i + 1, 2).Interior.Color Next End Sub
-- @+ ;o)))
Modeste
Bonsour® michdenis avec ferveur ;o))) vous nous disiez :
| cela signifie simplement que dans la palette standard par défaut il y a des redondances... | ce qui n'est pas le cas des palettes personnalisées générées dans le classeur Mosaiques ou dans Gdpallettes
Ce n'est pas avec les yeux que je possède que je peux faire une telle différence des couleurs !
Le demandeur en a eu plus qu'il en demandait réellement !
;-)
| cela signifie simplement que dans la palette standard par défaut il y a
des redondances...
| ce qui n'est pas le cas des palettes personnalisées générées dans le
classeur Mosaiques ou dans Gdpallettes
Ce n'est pas avec les yeux que je possède que je peux
faire une telle différence des couleurs !
Le demandeur en a eu plus qu'il en demandait réellement !
| cela signifie simplement que dans la palette standard par défaut il y a des redondances... | ce qui n'est pas le cas des palettes personnalisées générées dans le classeur Mosaiques ou dans Gdpallettes
Ce n'est pas avec les yeux que je possède que je peux faire une telle différence des couleurs !
Le demandeur en a eu plus qu'il en demandait réellement !