Changer la couleur de la cellule sélectionner


#1

Bonjour
dans ma Feuil1 j’utilise uniquement les cellule de la plage "EST"
Est=Feuil1!$B$4;Feuil1!$B$5;Feuil1!$B$9;Feuil1!$B$12;Feuil1!$B$14;Feuil1!$C$6;Feuil1!$C$7;Feuil1!$C$8;Feuil1!$C$10;Feuil1!$C$11;Feuil1!$C$13;Feuil1!$D$4;Feuil1!$D$14
et cette plage seras sélectionner automatiquement après le changement de la cellule “B2” pour ca voici mon code utiliser
===================================================
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Address <> Range(“B2”).Address Then Exit Sub
Range(“est”).Select
End Sub
===================================================
je souhaite changer la couleur de la cellule sélectionner dans plage “EST” et tous les cellule a gauche de la même ligne
j’ai utiliser le code suivant
=========================================================
Private Sub Worksheet_selectionChange(ByVal Target As Range)
ActiveSheet.Cells.Interior.ColorIndex = 0
Range(ActiveCell, ActiveCell.End(xlToLeft).End(xlToLeft)).Interior.ColorIndex = 4
End Sub
================================================================
mais lorsque j’ai fusionné les deux code ça marche pas
Aider moi svp


#2

Bonjour,

A tester, si j’ai compris la manoeuvre à effectuer

Option Explicit

Private Sub Worksheet_Change(ByVal Target As Range)
  Dim Plage As Range 'Déclaration des variables
    ActiveSheet.Cells.Interior.ColorIndex = 0 'ôte les couleurs
    If Target.Address <> Range("B2").Address Then 'si la cellule modifié n'est pas B2
      GoTo fin 'Je vais à la fin
    Else 'sinon
      Set Plage = Range("Est") 'déclare ma plage nommée
      Range("Est").Interior.ColorIndex = 15 'je la colorise en gris
    End If
fin:
End Sub

Sub Couleur()
  Dim Cel As Range 'Déclaration des variables
  ActiveSheet.Cells.Interior.ColorIndex = 0 'ôte les couleurs
  Range(ActiveCell, ActiveCell.End(xlToLeft).End(xlToLeft)).Interior.ColorIndex = 4 'je la colorise en vert ainsi que les cellules se trouvant à gauche
End Sub

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
  Dim Plage As Range 'Déclaration des variables
    If Not Intersect(ActiveCell, Range("Est")) Is Nothing Then 'si la cellule sélectionnée est dans la plage
      ActiveSheet.Cells.Interior.ColorIndex = 0 'ôte les couleurs
      Couleur 'j'execute la macro Couleur
    Else 'sinon
      Exit Sub 'Je sort
    End If
End Sub

Classeur1test.xlsm (18,1 Ko)


#3

bonjour Mr et merci pour votre réponse
a 90% c’est juste non seulement que dans la feuil j’utilise uniquement la plage “EST” et juste après le changement de B2 la plage "EST" seras sélectionner et je reste uniquement dans cette plage


#4

Bonjour,

Rien compris à la demande
Un classeur et des exemples :wink:


#5

Ce sujet a été automatiquement fermé après 30 jours. Aucune réponse n’est permise dorénavant.