Grâce à la précieuse aide de Bloon, j'ai fini par mettre en place ce petit code :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
 
   procedure TForm2.DBGrid1DrawColumnCell(Sender: TObject; const Rect: TRect;
  DataCol: Integer; Column: TColumn; State: TGridDrawState);
begin
  If gdSelected In State Then
  Begin
{défini la couleur de la cellule active }
TDBGrid(Sender).Canvas.Brush.Color := clSilver
  End Else
  Begin
{défini les couleurs des cellules suivant leur valeur}
if Column.Field.AsInteger = 1 then TDBGrid(Sender).Canvas.Brush.Color := clfuchsia
else
if Column.Field.AsInteger = 2 then TDBGrid(Sender).Canvas.Brush.Color := clyellow
else
{défini la couleur de la cellule qui n'a pas de valeur}
TDBGrid(Sender).Canvas.Brush.Color := clWhite;
  End;
{redessine le DBGrid en tenant compte des couleurs}
  TDBGrid(Sender).DefaultDrawColumnCell(rect,datacol,column,state);
end;
Ca fait nikel ce que je veux puisque chaque cellule du DBGRID prend la couleur correspondante à la valeur qu'elle contient.

Seulement voila, il se peut que parfois dans une de mes collones j'ai une valeur qui n'est pas un Integer --> cela provoque une erreur --> je voudrais que quand le PRG rencontre autre chose qu'un integer il fasse comme si c'était la valeur 0.

Ou alors je voudrais pouvoir dire au programme au lieu de tester tout le DBGRID de tester juste les collones de 6 à 9 dans lesquelles je suis sur qu'il n'y a que des INTEGER et pas les 5 premières ou je sais qu'il y a des strings