Détecter une valeur donnée dans une plage en vba
Résolu/Fermé
59Bzik
Messages postés
13
Date d'inscription
vendredi 17 août 2018
Statut
Membre
Dernière intervention
22 août 2018
-
22 août 2018 à 08:14
PapyLuc51 Messages postés 4466 Date d'inscription dimanche 3 mai 2009 Statut Membre Dernière intervention 4 avril 2025 - 23 août 2018 à 07:58
PapyLuc51 Messages postés 4466 Date d'inscription dimanche 3 mai 2009 Statut Membre Dernière intervention 4 avril 2025 - 23 août 2018 à 07:58
Bonjour le forum
Comment écrire un code vba Excel qui dit que:
Si la valeur de la cellule C6 est égale à la valeur de l'une des cellules de la plage (E3:H4) Alors la cellule D6 se colore en rouge.
Merci d'avance.
Comment écrire un code vba Excel qui dit que:
Si la valeur de la cellule C6 est égale à la valeur de l'une des cellules de la plage (E3:H4) Alors la cellule D6 se colore en rouge.
Merci d'avance.
A voir également:
- Détecter une valeur donnée dans une plage en vba
- Comment détecter un traceur sur téléphone - Accueil - Confidentialité
- Faites afficher avec un fond coloré les cellules qui contiennent une valeur comprise entre 250 et 350. quel nombre est dessiné en surbrillance ? ✓ - Forum Excel
- Excel : si valeur existe dans une plage alors ✓ - Forum Excel
- Dans son restaurant, igor utilise une application pour gérer les réservations. dans le schéma (structure) de la base de données de l’application représenté ci-dessous : de quoi « telephone » est-il le nom ? de quoi « reservations » est-il le nom ? associez chaque terme avec un attribut, une donnée, un enregistrement, une table, une valeur ou une variable. - Forum Webmastering
- Cette valeur ne correspond pas aux restrictions de validation des données pour cette cellule ✓ - Forum MacOS
3 réponses
PapyLuc51
Messages postés
4466
Date d'inscription
dimanche 3 mai 2009
Statut
Membre
Dernière intervention
4 avril 2025
1 464
Modifié le 22 août 2018 à 08:42
Modifié le 22 août 2018 à 08:42
Bonjour,
Sans VBA, une MFC sur D6 avec la formule
=NB.SI(E3:H4;C6)=1 ----Ou---- =NB.SI(E3:H4;C6)>0
Cordialement
Sans VBA, une MFC sur D6 avec la formule
=NB.SI(E3:H4;C6)=1 ----Ou---- =NB.SI(E3:H4;C6)>0
Cordialement
PapyLuc51
Messages postés
4466
Date d'inscription
dimanche 3 mai 2009
Statut
Membre
Dernière intervention
4 avril 2025
1 464
22 août 2018 à 13:37
22 août 2018 à 13:37
La MFC ne s'efface pas si tu changes la format de la cellule individuellement (couleur / bordure / police).
Par contre c'est vrai qu'elle s'efface si tu utilises la brosse de reproduction de mise en forme qui englobe toutes les mises en forme de la cellule souche.
Cordialement
Par contre c'est vrai qu'elle s'efface si tu utilises la brosse de reproduction de mise en forme qui englobe toutes les mises en forme de la cellule souche.
Cordialement
59Bzik
Messages postés
13
Date d'inscription
vendredi 17 août 2018
Statut
Membre
Dernière intervention
22 août 2018
22 août 2018 à 17:16
22 août 2018 à 17:16
Si je peux avoir un code vba c'est plus sûr. Merci bcp
PapyLuc51
Messages postés
4466
Date d'inscription
dimanche 3 mai 2009
Statut
Membre
Dernière intervention
4 avril 2025
1 464
22 août 2018 à 18:20
22 août 2018 à 18:20
En attendant que les spécialistes du code VBA répondent ; je ne suis pas du tout au fait du langage alors j'ai fait un enregistrement via l'onglet développeur pour mettre en place la MFC ; ça a l'air de fonctionner.
https://www.cjoint.com/c/HHwpNdNy4z8
Cordialement
https://www.cjoint.com/c/HHwpNdNy4z8
Cordialement
59Bzik
Messages postés
13
Date d'inscription
vendredi 17 août 2018
Statut
Membre
Dernière intervention
22 août 2018
Modifié le 22 août 2018 à 19:40
Modifié le 22 août 2018 à 19:40
J'ai utilié ce code mais ça se bloque au niveau de : If c = Cells( i , 1) Then
With Worksheets("Preparation Emplois").Range("M5:T7")
For i = 10 To 14
For j = 13 To 20
Set c = .Find(Cells(i, 1), LookIn:=xlValues)
If c = Cells( i , 1) Then ' ça ce bloque ici'
Cells(i, j).Interior.ColorIndex = 43
End If
Next j
Next i
End With
Mais s'il s'agit d'une seule cellule, ça marche
Çàd: Cells(10 , 1) au lieu de Cells( i , 1)
à condition que la valeur de Cells(10,1) est trouvée dans la plage. Si non il réclame erreur.
Y'a t-il une correction s'ils vous plait ?
With Worksheets("Preparation Emplois").Range("M5:T7")
For i = 10 To 14
For j = 13 To 20
Set c = .Find(Cells(i, 1), LookIn:=xlValues)
If c = Cells( i , 1) Then ' ça ce bloque ici'
Cells(i, j).Interior.ColorIndex = 43
End If
Next j
Next i
End With
Mais s'il s'agit d'une seule cellule, ça marche
Çàd: Cells(10 , 1) au lieu de Cells( i , 1)
à condition que la valeur de Cells(10,1) est trouvée dans la plage. Si non il réclame erreur.
Y'a t-il une correction s'ils vous plait ?
PapyLuc51
Messages postés
4466
Date d'inscription
dimanche 3 mai 2009
Statut
Membre
Dernière intervention
4 avril 2025
1 464
>
59Bzik
Messages postés
13
Date d'inscription
vendredi 17 août 2018
Statut
Membre
Dernière intervention
22 août 2018
22 août 2018 à 20:15
22 août 2018 à 20:15
Je suis arrivé au bout de mes compétences, comme je le disais je ne connais pas du tout le langage VBA, essaie de ton coté de faire avec l'enregistreur de macro.
Maintenant je te laisse aux bons soins des spécialistes en la matière.
Bonne continuation
Cordialement
Maintenant je te laisse aux bons soins des spécialistes en la matière.
Bonne continuation
Cordialement
59Bzik
Messages postés
13
Date d'inscription
vendredi 17 août 2018
Statut
Membre
Dernière intervention
22 août 2018
22 août 2018 à 20:20
22 août 2018 à 20:20
Ok merci. j'ai trouvé la solution
With Worksheets("Preparation Emplois").Range("M5:T7")
For i = 10 To 144
For j = 13 To 20
Set c = .Find(Cells(i, 1), LookIn:=xlValues)
If c Is Nothing Then Cells(i, j).Interior.ColorIndex = 0
Next j
Next i
End With
With Worksheets("Preparation Emplois").Range("M5:T7")
For i = 10 To 144
For j = 13 To 20
Set c = .Find(Cells(i, 1), LookIn:=xlValues)
If c Is Nothing Then Cells(i, j).Interior.ColorIndex = 0
Next j
Next i
End With
PapyLuc51
Messages postés
4466
Date d'inscription
dimanche 3 mai 2009
Statut
Membre
Dernière intervention
4 avril 2025
1 464
>
59Bzik
Messages postés
13
Date d'inscription
vendredi 17 août 2018
Statut
Membre
Dernière intervention
22 août 2018
23 août 2018 à 07:58
23 août 2018 à 07:58
Bonjour
C'est bien tu as trouvé ta solution -
Si c'est le cas n'oublie pas de marquer le fil en résolu
Cordialement
C'est bien tu as trouvé ta solution -
Si c'est le cas n'oublie pas de marquer le fil en résolu
Cordialement
22 août 2018 à 13:07
22 août 2018 à 13:08
Modifié le 22 août 2018 à 13:22
La MFC s'écrase lorsqu'on passe par clique bouton droit de la sourie--->format des cellules-->Bordure.
Mais Bordure direct du ruban, ne l'écrase pas.