Couleur de cellules dans EXCEL10

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

Bonjour,

Dans un dossier EXCEL j' ai en colonne A des cellules avec un fonds vert (4), je voudrais que les mêmes lignes des colonnes K,L,M, aient le même fonds vert.

Je n' arrive pas à résoudre ce problème en VBA

Merci pour l' aide.

Cdt,

JB22

A voir également:

12 réponses

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

Bonjour,

comment sont colorisé les cellules de la colonne A, avec une macro , manuellement ou avec une mise en forme conditionnelle, dans ce cas quel est la formule utilisée


0
JB22
 

Bonjour,

Ls cellules sont colorées par la macro suivante :

Range("A14:M163").Interior.ColorIndex = xlNone

For H = 14 To 163
For A = 14 To 163
If Cells(H, 8) = Cells(A, 1) And IsNumeric(Cells(A, 1)) Then Cells(A, 1).Interior.ColorIndex = 8
Next
Next
 

Cdt

JB22

0
fabien25000 Messages postés 673 Date d'inscription   Statut Membre Dernière intervention   59
 

Bonjour 

il faut remplacer la ligne

If Cells(H, 8) = Cells(A, 1) And IsNumeric(Cells(A, 1)) Then Cells(A, 1).Interior.ColorIndex = 8

par 

If Cells(H, 8) = Cells(A, 1) And IsNumeric(Cells(A, 1)) Then 
    Cells(A, 1).Interior.ColorIndex = 8
    Cells(A, 11).Interior.ColorIndex = 8
    Cells(A, 12).Interior.ColorIndex = 8
    Cells(A, 13).Interior.ColorIndex = 8
end if
0
Mike-31 Messages postés 18405 Date d'inscription   Statut Contributeur Dernière intervention   5 135
 

Re,

ou encore comme cela, avec en tête une gestion d'erreur pour éviter le plantage d'Excel

On Error Resume Next
Range("A14:M163").Interior.ColorIndex = xlNone
For H = 14 To 163
For A = 14 To 163
If Cells(H, 8) = Cells(A, 1) And IsNumeric(Cells(A, 1)) Then Union(Cells(A, 1), Cells(A, 11), Cells(A, 12), Cells(A, 13)).Interior.ColorIndex = 8
Next
Next


0
JB22
 
Bonjour

J' ai fait un copier-coller de votre macro;

hélas cela ne fonctionne pas !

Cdt,

JB22

0

Vous n’avez pas trouvé la réponse que vous recherchez ?

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

Re,

de quel code parles tu, celui de Fabien ou le mien


0
JB22
 

J' ai essayé les deux sans succès:

Cdt,

JB22

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

Re,

Bizarre, regarde le fichier exemple voir

https://www.cjoint.com/c/LGjmJ30RyNF


0
fabien25000 Messages postés 673 Date d'inscription   Statut Membre Dernière intervention   59
 

à vrai dire je ne comprend pas trop les 2 boucles car elle comparent des lignes différentes dès le deuxième tour de boucle.. 

de plus IsNumeric(Cells(A, 1)) renvoie VRAI avec les cellules vides (?!)

0
fabien25000 Messages postés 673 Date d'inscription   Statut Membre Dernière intervention   59
 

le code ci dessous me semble mieux correspondre à ce que j'ai compris de la demande mais soulève une interrogation : ça fonctionnait comme tu le voulais avant? 

Private Sub CommandButton1_Click()
On Error Resume Next
Range("A14:M163").Interior.ColorIndex = xlNone
'For H = 14 To 163
For A = 14 To 163
If Cells(A, 8) = Cells(A, 1) And IsNumeric(Cells(A, 1)) And Cells(A, 1) <> "" Then Union(Cells(A, 1), Cells(A, 11), Cells(A, 12), Cells(A, 13)).Interior.ColorIndex = 8
Next
'Next
End Sub

0
JB22
 

Bonsoir,

Cela ne fonctionne pas.

J' ai créé une feuille de votes dans laquelle j' enregistre les votants ayant des pouvoirs, la cellule de la colonne A de ces votants ayant des pouvoirs sont en fonds vert, j'  aimerai que les cellules des colonnes G; H, I, soient également en vert;

Comment faire ?

Cdt,

JB22

0
fabien25000 Messages postés 673 Date d'inscription   Statut Membre Dernière intervention   59
 

Cela ne fonctionne pas.

C'est à dire ?? ça fait 2 fois que tu nous dis ça mais on ne sait pas en quoi "ça ne fonctionne pas"...

ça bug? ça fait le contraire de ce que tu attends? ça ne fait rien?

tu n'as pas répondu à ma question : le code que tu nous a partagé au poste 2 fonctionnait il comme tu l'attendais sur la colonne A?

il va falloir que tu nous partage un classeur excel exemple sans données confidentielles avec le resultat que tu attends via cjoint par exemple parce que là je ne saurai pas t'aider d'avantage sans plus de détails

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

Re,

Si on rapprend ton code qui d'après toi fonctionne ?

Range("A14:M163").Interior.ColorIndex = xlNone

For H = 14 To 163
For A = 14 To 163
If Cells(H, 8) = Cells(A, 1) And IsNumeric(Cells(A, 1)) Then Cells(A, 1).Interior.ColorIndex = 8
Next
Next

tu demandes initialement de coloriser les cellules colonne K, L et M comme les cellules colonne A coloriser par ton code, mais qui apparemment sur ton post 11 deviendrait G, H, I déjà il faudrait être plus précis, c'est K, L et M ou G, H, I.

Fabien a à juste titre relevé une double boucle inutile qui ne doublait que la première, mais à par cela le code

 
 Cells(A, 1).Interior.ColorIndex = 8
 Cells(A, 11).Interior.ColorIndex = 8
 Cells(A, 12).Interior.ColorIndex = 8
 Cells(A, 13).Interior.ColorIndex = 8

ou plus technique

If Cells(A, 8) = Cells(A, 1) And IsNumeric(Cells(A, 1)) Then Union(Cells(A, 1), Cells(A, 11), Cells(A, 12), Cells(A, 13)).Interior.ColorIndex = 8

soit le code complet,

Private Sub CommandButton1_Click()
On Error Resume Next
Range("A14:M163").Interior.ColorIndex = xlNone
For A = 14 To 163
If Cells(A, 8) = Cells(A, 1) And IsNumeric(Cells(A, 1)) Then Union(Cells(A, 1), Cells(A, 11), Cells(A, 12), Cells(A, 13)).Interior.ColorIndex = 8
Next
End Sub

fait exactement la même chose et répond a ta demande initiale ou détaille tes attentes parce que Cela ne fonctionne pas n'apporte aucune avancée et ne permet pas de proposer un code adapté.

Es ce que le fichier que j'ai joint post 8 fonctionne comme tu veux ?


0
JB22
 

Bonsoir,

Je remercie,Mike3 et fabien2500 de leur intérêt à mon sujet;

J' ai trouvé la raison du disfonctionnement, il n' a rien à voir avec le fonctionnement des macros mais dans l'ordre d" exécution; la sous classe (mandants) avant la classe (Votants).

Encore merci, 

JB22

Je n' ai aucun mérite a être vieux (Si Dieu le veut) mais j' assume;

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

Re,

Alors je passe le statut de la discussion en résolu.


0