Re Bonjour,
Je cherche à modifier la couleur de fond d'un contrôle image placé dans une feuille de calculs
Pour le moment je n'arrive à rien. Pas de bug avec cette syntaxe... malheureusement inopérante.
"couleur" est le paramètre envoyé sur sélection dans un combo, qui permet de retrouver, dans FL3, la combinaison RGB de la couleur choisie
Si quelqu'un a une idée pour modifier les propriétés des contrôles placés dans une feuille de calculs, je suis preneur.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23 Sub Colorier(Couleur As String) Dim FL1 As Worksheet Dim FL3 As Worksheet Dim FL2 As Worksheet Dim c As Range Dim Objet As Shape Set FL1 = Worksheets("Feuil1") Set FL2 = Worksheets("Feuil2") Set FL3 = Worksheets("Feuil3") With FL3.Range("A2:A13") Set c = .Find(Couleur) If Not c Is Nothing Then Set Objet = FL1.Shapes(FL2.Cells(1, 1)) If Objet.OLEFormat.progID = "Forms.Image.1" Then Objet.Select With Selection.ShapeRange .Fill.BackColor.RGB = RGB(c.Offset(0, 1), c.Offset(0, 2), c.Offset(0, 3)) End With FL1.Range("A1").Select End If End If End With End Sub
Par avance, merci.
NB - La procédure passe bien sur la ligne incriminée (en rouge sombre)
Pour éviter de faire perdre du temps... Ne fonctionnent pas non plus
ni
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 With FL1.Shapes(FL2.Cells(1, 1)) .Fill.BackColor.RGB = RGB(c.Offset(0, 1).Value, c.Offset(0, 2).Value, c.Offset(0, 3).Value) End With
ni
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 With Selection.ShapeRange.Fill.BackColor .RGB = RGB(c.Offset(0, 1).Value, c.Offset(0, 2).Value, c.Offset(0, 3).Value) DoEvents End Withnon plus que tous les modes de sélection ou d'affectation de la propriété BackColor
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5 With Selection.ShapeRange.Fill .BackColor.RGB = RGB(c.Offset(0, 1).Value, c.Offset(0, 2).Value, c.Offset(0, 3).Value) DoEvents End With
Partager