Mise en forme cellule négative par vba

Résolu
Bourrique66 Messages postés 158 Date d'inscription   Statut Membre Dernière intervention   -  
Mike-31 Messages postés 18405 Date d'inscription   Statut Contributeur Dernière intervention   -

Bonjour;

Actuellement j'utilise se code pour mettre en forme la dernière ligne de mon tableau mais j'aimerais ajouter une condition : si une cellule est négative sur la dernière ligne  j'aimerais que le fond

'permet de mettre en forme l'avant derniere ligne du tableau
deli = Cells(Columns(1).Cells.Count, 1).End(xlUp).Row
Rows("" & deli - 1 & ":" & deli - 1).Font.Bold = False 'Remet l'avant derniere ligne au format normale
Rows("" & deli - 1 & ":" & deli - 1).Font.Size = 9 'Remet l'avant derniere ligne au format 11
Rows("" & deli - 1 & ":" & deli - 1).Font.Color = vbBlack 'Remet l'avant derniere ligne au format noir
'************************************************************************************************
'permet de mettre en forme la derniere ligne du tableau
Rows("" & deli & ":" & deli).Font.Bold = True  ' Met la derniere ligne au format gras
Rows("" & deli & ":" & deli).Font.Size = 9 ' Met la derniere ligne au format 11
Rows("" & deli & ":" & deli).Font.Color = vbBlue ' Met la derniere ligne au format bleu

de la cellule passe en rouge et la police en gras blanc

A voir également:

3 réponses

Mike-31 Messages postés 18405 Date d'inscription   Statut Contributeur Dernière intervention   5 135
 

Bonjour,

En fin de code juste avant ton End Sub colle ce code

Rows("" & deli & ":" & deli).Select
For Each Cellule In Selection 'plage à adapter
    If Cellule.Value < 0 Then
    Cellule.Interior.Color = vbRed
    Cellule.Font.Color = vbWhite
    End If
  Next
ActiveCell.Select


0
Mike-31 Messages postés 18405 Date d'inscription   Statut Contributeur Dernière intervention   5 135
 

Re,

sur la base de ton code tu peux remplacer mon code proposé post 1 par

For Each Cellule In Range("" & deli & ":" & deli)
    If Cellule.Value < 0 Then
    Cellule.Interior.Color = vbRed
    Cellule.Font.Color = vbWhite
    End If
  Next
0
Bourrique66 Messages postés 158 Date d'inscription   Statut Membre Dernière intervention   2
 

Bonjour Mike-31

je viens de tester vos  codes et les deux fonctionnent parfaitement. Merci de votre réactivité

0
Mike-31 Messages postés 18405 Date d'inscription   Statut Contributeur Dernière intervention   5 135
 

Re, 

par contre ce qui me dérange dans ton code, c'est que le formatage des cellules s'applique à la ligne entière soit sur 16384 colonne.

quel est le nombre de colonne concerné


0