mettre des couleurs sur un plan fait sur Excel.

azerty10

XLDnaute Nouveau
Bonjour,

j'ai fait un plan sur excel où des cases désignaient des emplacements(adresse format texte).
Avec plusieurs données notament , j'ai crée un programme VBA , qui en fonction des données plaçaient les references et leurs données sur le plan.

Par conséquent j'aimerai rajouté une autre conditions c'est à dire en fonction des données mettre la couleur sur certains emplacement.

Sachant que dans une case il ya 4 données (reference, Nbr boite, type de boite et adresse), j'aimerais mettre en couleur les cases qui n'ont pas ces 4 données.

Merci A+
 

Pièces jointes

  • cijdW1PJnS.xls
    72.5 KB · Affichages: 117

Dranreb

XLDnaute Barbatruc
Re : mettre des couleurs sur un plan fait sur Excel.

Bonjour dtenfert
C'est maladif chez moi, je suis toujours choqué de voir une expression logique comparée à une constante logique. "=ESTVIDE(F10)" ça suffit !
Les opérateurs de comparaisons servent à transformer d'autres types de données en expressions logiques.
Les opérateurs à utiliser entre expressons logiques sont Eqv, Xor, Imp, And, Or et le préfixe Not. (en VBA)
A+
 
Dernière édition:

azerty10

XLDnaute Nouveau
Re : mettre des couleurs sur un plan fait sur Excel.

En fait les cellules sont pas vraiment. En effet, quand vous executez la macro, je voulais que les cellules " pas de place " prennent une couleur verte sur le plan.

Public Sub plan()
Dim lg1 As Long, lg2 As Long, col As Integer
Dim sel As Range
Dim wk1 As Worksheet, wk2 As Worksheet
Set wk1 = Sheets("DONNEES")
Set wk2 = Sheets("PLAN")
For lg1 = 2 To wk1.UsedRange.Rows.Count
If Not wk1.Cells(lg1, 5).Value = "Placé" Then
lg2 = 1: col = 1
Do
Set sel = wk2.Cells.Find(What:=wk1.Cells(lg1, 4).Value, After:=wk2.Cells(lg2, col), _
LookIn:=xlFormulas, LookAt:=xlPart)
If sel Is Nothing Then
wk1.Cells(lg1, 5).Value = "Pas de place"
Exit Do
End If
If Left(sel.Value, 13) = "Reference : " & Chr(10) Then
sel.Value = Replace(sel.Value, "Reference : ", "Reference : " & wk1.Cells(lg1, 1).Value)
sel.Value = Replace(sel.Value, "Boitage : ", "Boitage : " & wk1.Cells(lg1, 2).Value)
sel.Value = Replace(sel.Value, "Nbre de boite : ", "Nbre de boite : " & wk1.Cells(lg1, 3).Value)
wk1.Cells(lg1, 5).Value = "Placé"
Exit Do
End If
lg2 = sel.Row: col = sel.Column
Loop
End If
Next lg1
End Sub
 

Discussions similaires

Statistiques des forums

Discussions
312 084
Messages
2 085 194
Membres
102 811
dernier inscrit
caroline29260