Format conditionnel en VBA pour un tableau

  • Initiateur de la discussion Initiateur de la discussion ascal44
  • Date de début Date de début

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 !

ascal44

XLDnaute Occasionnel
Bonjour ,
je voudrais appliquer des formats conditionnels pour les cellules de A à D d 'un tableau si en cellule A il y à une valeure et ce jusqu'à la dernière ligne non définie du tableau.

Voici mon début de code:

Code:
Private Sub Worksheet_Change(ByVal Target As Range)

 '
    
      .Borders.LineStyle = xlContinuous
      '.Interior.ColorIndex = 43
      .HorizontalAlignment = xlLeft 'alignement texte
      .VerticalAlignment = xlCenter
      .Locked = False 'protection cellule
      .FormulaHidden = False
      
      .FormatConditions.Delete
      'MFC 1ère condition
      .FormatConditions.Add Type:=xlExpression, Formula1:="=CELLULE(""row"")=LIGNE()"
      With .FormatConditions(1)
        .Font.Bold = True
        .Font.Italic = False
        .Font.ColorIndex = 3
        .Interior.ColorIndex = 6
      End With
 
      'MFC 2ème condition
      .FormatConditions.Add Type:=xlExpression, Formula1:="=MOD(LIGNE();2)=0"
      .FormatConditions(2).Interior.ColorIndex = 15
  
      'MFC 3ème condition
      .FormatConditions.Add Type:=xlExpression, Formula1:="=MOD(LIGNE();1)=0"
      .FormatConditions(3).Interior.ColorIndex = xlAutomatic
    End With
    
 
End Sub

Merci pour votre aide
 
Re : Format conditionnel en VBA pour un tableau

Bonjour

il y a un petit problème dans ce code 😱

il faut lui indiquer pour quelle cellule dans le code suivant c'est par la cellule active

Code:
Private Sub Worksheet_Change(ByVal Target As Range)
 
 '
   With ActiveCell
      .Borders.LineStyle = xlContinuous
       '.Interior.ColorIndex = 43
       .HorizontalAlignment = xlLeft 'alignement texte
       .VerticalAlignment = xlCenter
       .Locked = False 'protection cellule
       .FormulaHidden = False
       
      .FormatConditions.Delete
       'MFC 1ère condition
       .FormatConditions.Add Type:=xlExpression, Formula1:="=CELLULE(""row"")=LIGNE()"
       With .FormatConditions(1)
         .Font.Bold = True
         .Font.Italic = False
         .Font.ColorIndex = 3
         .Interior.ColorIndex = 6
       End With
  
       'MFC 2ème condition
       .FormatConditions.Add Type:=xlExpression, Formula1:="=MOD(LIGNE();2)=0"
       .FormatConditions(2).Interior.ColorIndex = 15
   
      'MFC 3ème condition
       .FormatConditions.Add Type:=xlExpression, Formula1:="=MOD(LIGNE();1)=0"
       .FormatConditions(3).Interior.ColorIndex = xlAutomatic
     End With
     
 
 End Sub
 
Re : Format conditionnel en VBA pour un tableau

Oui , peut on remplacer With ActiveCell par un code qui spécifie la dernière ligne du tableau pour les cellules A😀.

En fait je veux appliquer le format conditionnel sur les cellules de A à D et sur la dernière ligne du tableau
 
- 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
7
Affichages
251
Réponses
9
Affichages
584
Réponses
2
Affichages
785
  • Question Question
Microsoft 365 colorer une plage
Réponses
2
Affichages
872
Retour