Format conditionnel en VBA pour un tableau

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
 

gilbert_RGI

XLDnaute Barbatruc
Re : Format conditionnel en VBA pour un tableau

Bonjour

il y a un petit problème dans ce code :eek:

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
 

ascal44

XLDnaute Occasionnel
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:D.

En fait je veux appliquer le format conditionnel sur les cellules de A à D et sur la dernière ligne du tableau
 

Statistiques des forums

Discussions
312 677
Messages
2 090 832
Membres
104 677
dernier inscrit
soufiane12