bonjour a tous
j'ai un trou de memoire comment on créée un dégradé de deux couleur dans une shape la couleur 2 est toujours absente
VB:
Private Sub creategrad_Click()
With Worksheets(listetheme.Value)
Set shap = .Shapes.AddShape(msoShapeRectangle, 0, 0, 100, 100)
shap.Name = "fond"
With shap.Fill
.Visible = msoTrue
.ForeColor.RGB = (vbred)
.BackColor.RGB = (vbyellow)
.TwoColorGradient 1,1
End With
End With
End Sub
Bonsoir Patrick
j'ai récupéré une procédure que j'ai adapté qui semble mais je n'en sais rien répondre a la demande lol
ajoute un shape et le colore de deux couleurs !
VB:
With ActiveSheet.Shapes _
.AddShape(Type:=msoShapeRectangle, _
Left:=0, Top:=0, Width:=40, Height:=80).Fill
.ForeColor.RGB = RGB(128, 0, 0)
.BackColor.RGB = RGB(0, 170, 170)
.TwoColorGradient Style:=msoGradientHorizontal, Variant:=1
End With
ca m'aura fait l'occasion de te saluer !
jean marie
bon j'ai fouillé dans mes archives et le pire c'est que je le savais!!!!! LOL
purré faut pas vieillir je vous le dit
l'astuce est on ne peut plus simple
il faut simplement changer l'ordre des instructions
l'instruction ...TwoColorGradient doit etre executée en premier
VB:
Private Sub creategrad_Click()
With Worksheets(listetheme.Value)
Set shap = .Shapes.AddShape(msoShapeRectangle, 0, 0, 100, 100)
shap.Name = "fond"
With shap.Fill
.TwoColorGradient 1, 1
.BackColor.RGB = (vbyellow)
.ForeColor.RGB = (vbred)
.Visible = msoTrue
End With
End With
End Sub
En version élaguée
(histoire d'occuper mon confinement )
VB:
Sub a()
With ActiveSheet.Shapes.AddShape(6, 0, 0, 100, 100).Fill
.TwoColorGradient 1, 2: .ForeColor.RGB = vbRed: .BackColor.RGB = vbYellow
End With
End Sub
bonsoir Staple mille six cents
oui l'essentiel c'est que l'instruction de gradient soit la première à être exécutée sinon walouwalou la 2d couleur bye bye!!