Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Formatage couleur cellule avec recherche via VBA

11 réponses
Avatar
Domi
Bonjour,
Soit 2 plages nommées "Maplage1" et "MaPlage2".
Je voudrais, par VBA, colorier (Couleur 35) chaque cellule de MaPlage1 qui
n'est pas vide ET dont la valeur est présente dans MaPlage2.
Quelqu'un pourrait-il m'indiquer le code à utiliser ?
Merci
Domi

10 réponses

1 2
Avatar
Jacky
Bonsoir,
Ceci peut-être
'----------
Sub JJ()
[maplage1].Interior.ColorIndex = xlNone
For Each c In [maplage1]
If Application.CountIf([maplage2], c) > 0 Then c.Interior.ColorIndex = 35
Next
End Sub
'-------------

--
Salutations
JJ


"Domi" a écrit dans le message de news:
%
Bonjour,
Soit 2 plages nommées "Maplage1" et "MaPlage2".
Je voudrais, par VBA, colorier (Couleur 35) chaque cellule de MaPlage1 qui
n'est pas vide ET dont la valeur est présente dans MaPlage2.
Quelqu'un pourrait-il m'indiquer le code à utiliser ?
Merci
Domi



Avatar
Domi
Testé et approuvé ;o)
Merci
Domi

"Jacky" a écrit dans le message de news:

Bonsoir,
Ceci peut-être
'----------
Sub JJ()
[maplage1].Interior.ColorIndex = xlNone
For Each c In [maplage1]
If Application.CountIf([maplage2], c) > 0 Then c.Interior.ColorIndex = 35
Next
End Sub
'-------------

--
Salutations
JJ


"Domi" a écrit dans le message de news:
%
Bonjour,
Soit 2 plages nommées "Maplage1" et "MaPlage2".
Je voudrais, par VBA, colorier (Couleur 35) chaque cellule de MaPlage1
qui n'est pas vide ET dont la valeur est présente dans MaPlage2.
Quelqu'un pourrait-il m'indiquer le code à utiliser ?
Merci
Domi







Avatar
Jacquouille
Bonsoir Domi
-----------------
Sub Doublons_MPFE()
derLB = [B65536].End(xlUp).Row
For i = 1 To [A65536].End(xlUp).Row
For Each c In Range("B1:B" & derLB)
If Range("A" & i).Value <> "" And [c] = Range("A" & i) Then
Range("A" & i).Interior.ColorIndex = 35
End If
Next
Next
End Sub
---------------------------------
Je l'ai testée avec des cel vides...et cela semble convenir.
Bonne chance
--
Bien amicalmement,
"Le vin est au repas ce que le parfum est à la femme."

Jacquouille.

"Domi" a écrit dans le message de news:
%
Bonjour,
Soit 2 plages nommées "Maplage1" et "MaPlage2".
Je voudrais, par VBA, colorier (Couleur 35) chaque cellule de MaPlage1 qui
n'est pas vide ET dont la valeur est présente dans MaPlage2.
Quelqu'un pourrait-il m'indiquer le code à utiliser ?
Merci
Domi



Avatar
Jacky
Re
Même que l'on peut se passer du >0

If Application.CountIf([maplage2], c) Then c.Interior.ColorIndex = 35

--
Salutations
JJ


"Domi" a écrit dans le message de news:

Testé et approuvé ;o)
Merci
Domi

"Jacky" a écrit dans le message de news:

Bonsoir,
Ceci peut-être
'----------
Sub JJ()
[maplage1].Interior.ColorIndex = xlNone
For Each c In [maplage1]
If Application.CountIf([maplage2], c) > 0 Then c.Interior.ColorIndex =
35
Next
End Sub
'-------------

--
Salutations
JJ


"Domi" a écrit dans le message de news:
%
Bonjour,
Soit 2 plages nommées "Maplage1" et "MaPlage2".
Je voudrais, par VBA, colorier (Couleur 35) chaque cellule de MaPlage1
qui n'est pas vide ET dont la valeur est présente dans MaPlage2.
Quelqu'un pourrait-il m'indiquer le code à utiliser ?
Merci
Domi











Avatar
Modeste
Bonsour® Jacky avec ferveur ;o))) vous nous disiez :

Même que l'on peut se passer du >0
If Application.CountIf([maplage2], c) Then c.Interior.ColorIndex 5



;o)))
même que l'on peut se passer du IF

c.Interior.ColorIndex = 35 * Application.Min(1, Application.CountIf([maplage2], c))

--
@+
;o)))
Avatar
Jacky
B'soir modeste
;o)))
même que l'on peut se passer du IF

Oui, mais le temps de réponse est doublé.
Testé avec 10 000 cellules
9,2 secondes pour ta version contre 4,6 secondes pour la mienne
Je garde mon "IF" ;o))))))


--
Salutations
JJ


"Modeste" a écrit dans le message de news:

Bonsour® Jacky avec ferveur ;o))) vous nous disiez :

Même que l'on peut se passer du >0
If Application.CountIf([maplage2], c) Then c.Interior.ColorIndex 5



;o)))
même que l'on peut se passer du IF

c.Interior.ColorIndex = 35 * Application.Min(1,
Application.CountIf([maplage2], c))

--
@+
;o)))
Avatar
Modeste
Bonsour® Jacky avec ferveur ;o))) vous nous disiez :

;o)))
même que l'on peut se passer du IF

Oui, mais le temps de réponse est doublé.
Testé avec 10 000 cellules
9,2 secondes pour ta version contre 4,6 secondes pour la mienne
Je garde mon "IF" ;o))))))



sauf que tu n'annules pas les couleurs en cas de changement
il faudrait que tu utilises le ELSE
et alors revoir le temps de reponse !!!
--
@+
;o)))
Avatar
Jacky
Re..
Ben non!
Pas besoin de Else
C'est pour cela que j'ai ceci en début de code
[maplage1].Interior.ColorIndex = xlNone
Je garde encore mon "IF" ;o)))))

--
Salutations
JJ


"Modeste" a écrit dans le message de news:

Bonsour® Jacky avec ferveur ;o))) vous nous disiez :

;o)))
même que l'on peut se passer du IF

Oui, mais le temps de réponse est doublé.
Testé avec 10 000 cellules
9,2 secondes pour ta version contre 4,6 secondes pour la mienne
Je garde mon "IF" ;o))))))



sauf que tu n'annules pas les couleurs en cas de changement
il faudrait que tu utilises le ELSE
et alors revoir le temps de reponse !!!
--
@+
;o)))
Avatar
Modeste
Bonsour® Jacky avec ferveur ;o))) vous nous disiez :

C'est pour cela que j'ai ceci en début de code
[maplage1].Interior.ColorIndex = xlNone
Je garde encore mon "IF"



;o)))))
--
@+
;o)))
Avatar
LSteph
:o))

Jacky a écrit :

Je garde encore mon "IF" ;o)))))



1 2