Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

XL 2016 Besoin d'aide ! Code BVA pour changer la couleur de 2 cellules d'une ligne si valeur identique

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

Titi5333

XLDnaute Nouveau
Bonjour,
J'ai besoin d'afficher une erreur (cellules passe en rouge ) si deux cellules ont la même valeur sur une ligne d'un tableau.
Je cherche un code BVA car si j'utilise une mise en forme conditionnelle, si je copie dans le tableau cela ne fonctionne plus.

Mon problème : je dois permettre sur un planning de réserver une salle (de 1à 7) sans que quelqu'un réserve la même salle.



J'aimerais si même salle sur la même ligne, alors les 2 cellules passe au rouge.

Merci d'avance pour votre aide !
 

Pièces jointes

Dernière édition:
Bonjour Sylvanu,
Merci !

J'ai déjà essayé cela ne fonctionne pas, les infirmières vont faire glisser la cellule pour réserver plusieurs 1/4 d'heure de réservation. c'est pour cela que je cherche un code VBA par ligne.

 
Bonjour le fil, Bonjour le forum,

Une proposition VBA avec la macro événementielle Change ci-dessous :

VB:
Private Sub Worksheet_Change(ByVal Target As Range) 'au changement dans l'onglet
Dim I As Integer 'déclare la variable I (Incrément)
Dim J As Byte 'déclare la variable J (incrément)
Dim K As Byte 'déclare la variable K (incrément)


Select Case Target.Column 'agit ne fonction de la colonne de la cellule modifiée (Target)
    Case 5, 7, 9, 11, 13, 15, 17, 19, 21, 23, 25, 27 'colonnes imparires de 5 à 27
        Select Case Target.Value 'agit en fonction de la valeur de la cellule modifiée
            'Mise en forme (plus conditionnelle mais par code)
            Case 1
                Target.Interior.Color = RGB(255, 199, 206)
                Target.Font.Color = RGB(156, 0, 6)
            Case 2
                Target.Interior.Color = RGB(255, 235, 156)
                Target.Font.Color = RGB(156, 101, 0)
            Case 3
                Target.Interior.Color = RGB(198, 239, 206)
                Target.Font.Color = RGB(0, 97, 0)
            Case 4
                Target.Interior.Color = RGB(91, 155, 213)
                Target.Font.Color = RGB(255, 255, 255)
            Case 5
                Target.Interior.Color = RGB(255, 255, 0)
                Target.Font.Color = RGB(255, 0, 0)
            Case 6
                Target.Interior.Color = RGB(0, 176, 240)
                Target.Font.Color = RGB(255, 255, 255)
            Case 7
                Target.Interior.Color = RGB(169, 208, 142)
                Target.Font.Color = RGB(255, 255, 255)
            Case Else
                Target.Interior.Color = RGB(255, 255, 255)
                Target.Font.Color = RGB(0, 0, 0)
        End Select 'fin de l'action en fonction de la valeur de la cellule
    For J = 5 To 25 Step 2 'boucle 1 : des colonnes 5 à 25
        For K = J + 2 To 27 'boucle 2 : des colonnes J+2 à 27
            If Not Cells(Target.Row, J).Value = "" Then 'condition 1 : si la cellule modifiée en colonne J n'est pas vide
                If Cells(Target.Row, J) = Cells(Target.Row, K) Then 'condition 2 : si la cellule modifiée en colonne J est égale à la cellule de la même ligne en colonne K
                    Cells(Target.Row, J).Interior.Color = RGB(255, 0, 0) 'fond rouge de la cellule modifié
                    Cells(Target.Row, J).Font.Color = RGB(0, 0, 0) 'encre noire de la celllue modifiée
                    Cells(Target.Row, K).Interior.Color = RGB(255, 0, 0) 'fond rouge de la cellule de la même ligne en colonne K
                    Cells(Target.Row, K).Font.Color = RGB(0, 0, 0) 'encre noire de la cellule de la même ligne en colonne K
                End If 'fin de la condition 2
            End If 'fin de la condition 1
        Next K 'prochaine colonne de la boucle 2
    Next J 'prochaine colonne de la boucle 1
End Select 'fin de l'action en fonctoion de la colonne de la celllue modifiée
End Sub
Le fichier :
 

Pièces jointes

Merci beaucoup GENIAL ! vous êtes trop fort !
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Réponses
3
Affichages
338
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…