Bonjour,
Je ne comprends pas une chose, avec target :
Si je sélectionne une "S2" par exemple, je ne devrai pas rentrai dans le for each, si ? car c'est le cas au débogage.
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 Private Sub Worksheet_SelectionChange(ByVal Target As Range) For Each Target In Range("M2:M200") For i = 5 To 260 If Target.Value = i - 5 Then Target.Offset(0, 2).Interior.Color = RGB(Sheets("ConvertIndRGB").Cells(i, 2).Value, Sheets("ConvertIndRGB").Cells(i, 3).Value, Sheets("ConvertIndRGB").Cells(i, 4).Value) End If Next i Target.Offset(0, 1) = ConvCo(Target.Value) Next ''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''' For Each Target In Range("Q2:Q200") If Target.Value = "" Then Target.Value = " " End If Next End Sub
Autre question, Pour le Target dans selection_change, les cellule prise en comptent sont les cellules sélectionnées juste avant le changement, j'imagine ? mais en débogage, pour arrêter le code il faut changer de cellule et du coup Target change, et pour le Pas à Pas, ça fausse tout. car mon code marche normalement mais pas en débogage.
Autre chose,
Ce code et lourd du fait de la fonction ConvCo()
et il prend 1 à 2 sec à chaque SelectionChange, donc je sais pas comment amélioré ça. j'ai mis la procédure principale dans Worksheet_Change(ByVal Target As Range) mais la procédure mais un temps infinie.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8 Function ConvCo(ByRef aci As Integer) For i = 5 To 260 If aci = Sheets("ConvertIndRGB").Cells(i, 1).Value Then ConvCo = Sheets("ConvertIndRGB").Cells(i, 2).Value & "," & Sheets("ConvertIndRGB").Cells(i, 3).Value & "," & Sheets("ConvertIndRGB").Cells(i, 4).Value End If Next i End Function
Voila je suis un peu dans le flou, je pense que mon code est mal construit mais je c'est pas quoi y faire.
Une derniere,
j'ai une cellule variable de type "255,0,255" sans guillemet
et dans mon 1er code j'ai la fonction RGB( ) comment les mettre en relation car RGB prend 3 variable et mon pas une.
Cette dernier question pourrai tout simplifier il me semble .
-----------------------------------------------------------
Partager