MSFLEXGRID:AIDEZ-MOI S.V.P/URGENT

STCManiak Messages postés 9 Date d'inscription lundi 6 janvier 2003 Statut Membre Dernière intervention 16 mai 2003 - 10 janv. 2003 à 09:16
cs_DeathAngel Messages postés 117 Date d'inscription vendredi 12 avril 2002 Statut Membre Dernière intervention 13 avril 2007 - 10 janv. 2003 à 11:26
Est-ce que quelqu'un aurait une solution??

J'ai une MsflexGrid, lorsque l'utilisateur sélectionne une ou plusieurs cellules de la FlexGrid, et qu'îl clique sur un bouton,
les cellules sélectionnées changent de couleur de fond!!

Pour l'instant j'ai ça:
-----------------------------------------------------------
Private Sub CmdChangerCouleur_Click()

MsfgHoraire.Cols = MsfHoraire.ColSel
MsfgHoraire.Rows = MsfHoraire.RowSel
MsfgHoraire.CellBackColor = 74652

End Sub

-------------------------------------------------------
le problème c'est que les propriétés ColSel et RowSel
reprèsentent seulement la cellule de départ de sélection, celle dans laquelle on a cliqué avant de glisser pour en sélectionner d'autres.
Autrement dit, j'ai qu'un seule cellule qui change de couleur

J'espère que vous aurez une soluce!!
A+

3 réponses

cs_DeathAngel Messages postés 117 Date d'inscription vendredi 12 avril 2002 Statut Membre Dernière intervention 13 avril 2007
10 janv. 2003 à 09:26
Salut STC,

il faut changer la propriété backcolorsel
MsfgHoraire.BackColorSel=Ton_Code_Couleur

et aussi la propriété ForeColorSel
MsfgHoraire.ForeColorSel=Ton_Code_Couleur
histoire de pas écrire en blanc sur fond blanc !!!

@peluche
DA
STCManiak Messages postés 9 Date d'inscription lundi 6 janvier 2003 Statut Membre Dernière intervention 16 mai 2003
10 janv. 2003 à 10:35
salut DeathAngel
Merci pour ta réponse, mais ce que je voudrais, c'est pas changer la couleur des cellules sélectionés, pendant la sélection,mais après!!
par exemple je sélectionne les cellules:
(0,1)(0,2)(0,3)(1,1)(1,2)(1,3)
j'aimerais peser sur un bouton, qui change définitivement
la couleurs des celleules sélectionnées,
avec le code que j'ai mis juste ci-dessous,
il y a seulement la cellule(0,1) qui change de couleur!
cs_DeathAngel Messages postés 117 Date d'inscription vendredi 12 avril 2002 Statut Membre Dernière intervention 13 avril 2007
10 janv. 2003 à 11:26
OK, j'avais pas pigé,
voilà une solution, certes pas très élégante, mais qui fonctionne très bien ^_^

Private Sub Command1_Click()
'Change la couleur de la selection
'on doit respecter i<=k et j<=l

Dim i As Long 'Bord haut de la plage de sélection
Dim j As Long 'Bord gauche de la plage de sélection
Dim k As Long 'Bord bas de la plage de sélection
Dim l As Long 'Bord droite de la plage de sélection
Dim a As Long
Dim b As Long

With Me.MSFlexGrid1
If .Row <= .RowSel Then
i = .Row
k = .RowSel
Else
i = .RowSel
k = .Row
End If

If .Col <= .ColSel Then
j = .Col
l = .ColSel
Else
j = .ColSel
l = .Col
End If

For a = i To k

For b = j To l
.Row = a
.Col = b
.CellBackColor = RGB(123, 321, 154)
Next b

Next a

End With

End Sub

Voilou
J'espère que ça va t'aider ...

@peluche
DA
Rejoignez-nous