XL 2016 Simplification d'un code pour colorer une cellule via USF (RESOLU)

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 !

misteryann

XLDnaute Occasionnel
Bonsoir le forum.
J'ai un code que j'ai bricolé pour colorer une cellule de la colonne 5 en fonction de la valeur trouvé dans la colonne 1 via une USF.
Le code fait 14 lignes mais je pense qu'il est possible de le simplifier ou de le coder différemment.

Cordialement.
 

Pièces jointes

Bonsoir misteryann 😉

Quelque chose comme ceci par exemple
VB:
Private Sub CommandButton1_Click()
  Dim Trouve As Range
  With Sheets("BPU")
    .Range("E:E").Interior.Color = xlNone
    On Error Resume Next :  Set Trouve = .Range("A:A").Find(TextBox1) :  On Error GoTo 0
    If Not Trouve Is Nothing Then  .Range("E" & Trouve.Row).Interior.Color = RGB(255, 255, 0)
  End With
End Sub
A+
 
Merci BrunoM45
Super. J'ai juste rajouté une ligne pour que la case colorée soit active et un "On Error Resume Next" si le BPU n'existe pas.
C'est possible de rajouter un MsgBox pour signaler que ce BPU n'existe pas?

Code:
Private Sub CommandButton1_Click()
Dim Trouve As Range
  With Sheets("BPU")
    .Range("E:E").Interior.Color = xlNone
    On Error Resume Next:   Set Trouve = .Range("A:A").Find(TextBox1):   On Error GoTo 0
    If Not Trouve Is Nothing Then .Range("E" & Trouve.Row).Interior.Color = RGB(255, 255, 0)
On Error Resume Next
    .Range("E" & Trouve.Row).Select
  End With
End Sub
 
Re,
J'ai juste rajouté une ligne pour que la case colorée soit active et un "On Error Resume Next" si le BPU n'existe pas.
Ou là... ce n'est pas comme ça 🙄
Voici le code correcte
VB:
Private Sub CommandButton1_Click()
  Dim Trouve As Range
  With Sheets("BPU")
    .Range("E:E").Interior.Color = xlNone
    On Error Resume Next:   Set Trouve = .Range("A:A").Find(TextBox1):   On Error GoTo 0
    If Not Trouve Is Nothing Then
      With .Range("E" & Trouve.Row)
        .Select
        .Interior.Color = RGB(255, 255, 0)
      End With
    Else
      MsgBox "BPU non trouvé :"
    End If
  End With
End Sub
A+
 
- 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
12
Affichages
173
Réponses
3
Affichages
193
Réponses
32
Affichages
975
  • Question Question
Réponses
8
Affichages
246
Retour