Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

Mise en forme conditionnelle

N

Nora

Guest
Bonjour forum !

Je cherche à changer la couleur des cellules en fonction de ce qui est saisi

j'utilise à la fois la mise en forme conditionelle pour traiter 3 couleurs puis le code pour traiter la derniere couleur et et le blanc en cas de non saisie

Comment faire pour traiter la colonne entiere ? pour le moment je ne traite la colonne A que de la ligne 1 à 1000.

Les temps de chargement sont assez long, surement parce que je balaye 2 fois la meme colonne. Que faire ?



------------------------------------

Private Sub Worksheet_Change(ByVal Target As Range)

For Each couleur In Range('a1:a1000')

If couleur.Text = 'J' Then
With couleur.Interior
.ColorIndex = 4
.Pattern = xlSolid
End With
End If

If couleur.Text = '' Then
With couleur.Interior
.ColorIndex = xlNone
.Pattern = xlSolid
End With
End If

Next

End Sub

-------------------------------

Merci

Nora
 

PascalXLD

XLDnaute Barbatruc
Modérateur
Bonjour

Modifies comme ceci


Message édité par: Pascal76, à: 01/12/2005 11:50
 
N

Nora

Guest
Pascal76,



J'essaye ton code, mais je ne vois aucun changement

est ce que je peux abuser de ta gentillesse en te demandant si tu peux m'envoyer un fichier excel avec le code ?



Nora
 

PascalXLD

XLDnaute Barbatruc
Modérateur
Re

En fait le grand changement vient du fait que ton code regardé toutes tes lignes de 1 à 1000 et le mien ne regarde que la ou les cellules qui changent

Sinon il y a une autre erreur de copie dans le code

If c.Text = J Then

remplacé par

If c.Text = 'J' Then

Bizarre tous mes ' ont sauté

Je t'envoie tout de même un classeur [file name=Classeur6_20051201114823.zip size=6323]http://www.excel-downloads.com/components/com_simpleboard/uploaded/files/Classeur6_20051201114823.zip[/file]
 

Pièces jointes

  • Classeur6_20051201114823.zip
    6.2 KB · Affichages: 11

PascalXLD

XLDnaute Barbatruc
Modérateur
OUPS

Attends j'avais zappé une partie de ta question

J'étais resté sur le pbe de délai et pas sur la question toute la colonne

Il faut donc modifié la ligne

If Not Intersect(Target, Range('a1:a1000')) Is Nothing Then

par

If Not Intersect(Target, Range('A:A')) Is Nothing Then

Oups le fichier avec la nouvelle modif [file name=Classeur6_20051201115355.zip size=6279]http://www.excel-downloads.com/components/com_simpleboard/uploaded/files/Classeur6_20051201115355.zip[/file]
 

Pièces jointes

  • Classeur6_20051201115355.zip
    6.1 KB · Affichages: 11
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…