Excel et VB mettre de la couleur

Fermé
LENA - 25 oct. 2007 à 15:12
 lena - 5 mars 2008 à 16:44
Bonjour,

UN PETIT SOUCI
JE VOUDRAIS SAVOIR COMMENT FAIRE POUR POUVOIR AFFECTE UNE COULEUR A UNE LIGNE DE DONNEE QUE JE COPIE DE EXCEL A EXCEL
COMMENT JE PEUT FAIRE POUR QUE LORSQUE JE COPI MES DONNEES CETTE LIGNE DE DONNE DEVIENNE ROUGE

OU ENCORE COMMENT FAIRE POUR
SI MA LIGNE DE MON TABLEAU EXCEL CONTIENT QUELQUE CHOSE JE LA COLORIE EN ROUGE ET SI IL N Y A RIEN JE NE FAIT RIEN;

MERCI A TOUS
J ATTEND MON SAUVEUR
BISOUS LENA
A voir également:

16 réponses

ShaBoo Messages postés 392 Date d'inscription mercredi 12 septembre 2007 Statut Membre Dernière intervention 5 septembre 2009 50
25 oct. 2007 à 15:19
Bonjour,

regarde la proprité .Interior.ColorIndex de ta ligne.


PS : n'écris pas en MAJUSCULE ... ça fait mal aux yeux ... ;p
0
Bonjour,
desolé j ecrit en petit ca va comme ca?
super xon a trouve la solution en meme temps seulement comment faire maintenant pour colorer la ligne si et seulement si une cellule de cette ligne contient qqchose.
merci et encore desole pour les grosse lettre.
lena
0
ShaBoo Messages postés 392 Date d'inscription mercredi 12 septembre 2007 Statut Membre Dernière intervention 5 septembre 2009 50
25 oct. 2007 à 15:40
tu testes la valeur de la cellule pour savoir si elle contient quelque chose.
0
ShaBoo Messages postés 392 Date d'inscription mercredi 12 septembre 2007 Statut Membre Dernière intervention 5 septembre 2009 50
25 oct. 2007 à 15:45
Dsl ... j'ai été un peu vite.

tu peux essayer ceci :

bCellVide = False
Pour Chaque cellule de la ligne

     Si Cellule.Value <> ""
         bCellVide = True
         Sortie Pour Chaque cellule de la ligne
     FinSi
FinPour

Si bCellVide = True
     Colorier la ligne
FinSi




(Je pense qu'il doit y avoir une méthode plus direct pour te dire si la ligne est vide ... mais je ne la connais pas ;p)
0
Bonjour,
merci j'essaye et je te donne le resultat
0
ShaBoo Messages postés 392 Date d'inscription mercredi 12 septembre 2007 Statut Membre Dernière intervention 5 septembre 2009 50
25 oct. 2007 à 16:21
Tu peux regarder ce document. C'est une mine d'infos.

ftp://ftp2.developpez.be/developps/vb/VB-excel2.pdf
0
merci c de ce document que je m inspire pour le moment mais je ne trouve pas ca tres complet.
dit moi j'ai essayer ton prog mais il m affiche un message d erreur "objet requis" tu sait de quoi il parle

j'ai ecrit le code comme ca

bCellVide = False

if Cellule.Value <> "" then
bCellVide = True

endifi

if bCellVide = True
rows.interior.colorindex=5
endif

il faut utilise un for?

merci et desole mais je suis un brel en vb
0

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

Posez votre question
ShaBoo Messages postés 392 Date d'inscription mercredi 12 septembre 2007 Statut Membre Dernière intervention 5 septembre 2009 50
25 oct. 2007 à 16:53
"merci et desole mais je suis un brel en vb"

lol ... meuh nan ...

Il te faut un "For".

For Each c In .Rows 
    'la 1ere cellule trouvé à non vide on sort (pas besoin de scanner tte la ligne)
    if c.Value <> "" then
       bCellVide = True
       Exit For
   end if
Next c
0
ShaBoo Messages postés 392 Date d'inscription mercredi 12 septembre 2007 Statut Membre Dernière intervention 5 septembre 2009 50
25 oct. 2007 à 17:09
bCellVide = True  'je met le boolean a vrai en etant pessimiste ... ;p

For Each c In .Rows  'Pour chaque cellule de la ligne
    
    if c.Value <> "" then 'si la cellule (c) est different de rien, vide, nada, null
       bCellVide = False  'je met le boolean à faux pour dire que j'ai trouvé
                         'au moins une cellule de la ligne qui est remplie
       Exit For ' je sors du For Each, car on a trouvé une cellule non vide
   end if
Next c
0
OK mais tu peut me traduire ca aussi stp
lol ... meuh nan ...
merci
0
Bonjour,
voici le code que g ecrit

For Each cellule In Rows
bcellVide = False
If cellule.Value <> "" Then
bcellVide = True
Next

End If
If bcellVide = True Then
Rows.Interior.ColorIndex = 5
End If

il me met comme erreur Next sans for

je commenc ea desesperee
0
ShaBoo Messages postés 392 Date d'inscription mercredi 12 septembre 2007 Statut Membre Dernière intervention 5 septembre 2009 50
25 oct. 2007 à 17:30
"je commenc ea desesperee"

Normal ... c'est bientot la fin de la journée ... il te faut un p'tit gouter ... ;p

(petit conseil : utilise la balise de mise en forme pour ton code => c'est la petite icone avec "<>". tu selectionne ton code, tu appuies sur l'icone et hop ... code mise en forme)

For Each cellule In Rows
   bcellVide = False ' Pourquoi pas. mais il est preferable de le mettre à False avant de rentrer dans la boucle
   If cellule.Value <> "" Then
       bcellVide = True 'Tu veux scanner ttes les cellules
   'il te manque le End If ici
Next

End If 'il n'a rien à faire ici
If bcellVide = True Then
   Rows.Interior.ColorIndex = 5
End If 
0
avec ton code du message 10 une erreur "incompatibilite de type" s'affiche hahahahhahhahhahahahha
ca s appelle un hurlement primaire.

en tout cas je te remercie de ta patience c cool
0
ShaBoo Messages postés 392 Date d'inscription mercredi 12 septembre 2007 Statut Membre Dernière intervention 5 septembre 2009 50
25 oct. 2007 à 17:48
"hahahahhahhahhahahahha "

Bouh ... ça fait froid dans le dos ... bientot Halloween


Essaye ce code :
bCellVide = False

For Each c In Range("A1:A5")  
    
    if c.Value <> "" then 
       MsgBox c.Value & " dans " & c.Adress
       bCellVide = True
       Exit For ' je sors du For Each, car on a trouvé une cellule non vide
   End If
Next c
0
pas mal lorsque qu il n y a rein dans mes cellule mais si il y a qqchose une message erreur s affiche propriete ou methode non geree par cette objet..............
ca te parle?
0
ShaBoo Messages postés 392 Date d'inscription mercredi 12 septembre 2007 Statut Membre Dernière intervention 5 septembre 2009 50
25 oct. 2007 à 18:08
waip ...

il faut ecrire c.Address au lieu de c.Adress
0
zarg Messages postés 10 Date d'inscription jeudi 25 octobre 2007 Statut Membre Dernière intervention 15 avril 2008
25 oct. 2007 à 18:07
C'est très joli avec du code, mais Excel sait faire ça sans macro :

=> Format / Mise en Forme Conditionnelle
=> au lieu de "la valeur de la cellule est", tu choisis "la formule est"

Après, il y a une syntaxe un peu funky à attraper, mais ça te permet de mettre en forme une cellule en fonction de ce qu'il y a dans une AUTRE cellule.

Exemple, la formule est (sans les guillemets, hein) : "=estnum(A5)" ; ça t'applique la m.e.f. conditionnelle si il y a une valeur numérique dans A5. Après, pour étendre à une plage, faut jouer avec les références de ligne et colonne, les $$$...

Bonne chance !

Zarg
0
MERCI POUR TOUT C ETAIT COOL CETTE JOURNEE AVEC TOI
TU ES VRAIMENT PATIENT OU PATIENTE
J ESPERE POUVOIR TE REPARLE

PS TU VIENS DE QUELLE REGION
MOI JE VIENS DE L ALSACE ON EST PEU ETRE VOISIN ET JE SUIS UNE FILLE QUI GALEREEEEEEEEEEEEEEE EN VB
ET TOI
0
ShaBoo Messages postés 392 Date d'inscription mercredi 12 septembre 2007 Statut Membre Dernière intervention 5 septembre 2009 50
25 oct. 2007 à 18:16
Aïee ... j'ai mal au yeux ...;p

Je suis à l'ouest ... tt près de l'océan. Et je suis en garçon ... ;p

Il m'arrive aussi de galérer en vba. Mais il y a mille façon d'arriver à ce que l'on veut.
0
desole fin de journee
je suis aller dans les landes cette ete tu as de la chance nous on a la neige et les cygone et toi la mer et les mouettes.plutot cool mec alors
tu as quel age moi 22 et je suis en licence en apprentissage dans la prog sur simatic manager plutot
et toi enfin si je ne suis pas trop indiscrette.
enfin je te trouve plutot cool pour te prendre la tete a m aider toute la journee
0
ShaBoo Messages postés 392 Date d'inscription mercredi 12 septembre 2007 Statut Membre Dernière intervention 5 septembre 2009 50
25 oct. 2007 à 18:23
"enfin je te trouve plutot cool pour te prendre la tete a m aider toute la journee"

ça me détend de mes longues journées de labeur en informatique ... cela me permet de m'essayer à autre chose.

Mais si tu le veux bien, et pour ne pas trop polluer le forum, tu peux m'ecrire en MP.

De plus, si ton pb est réglé pour ce sujet, un p'tit résolu est le bien venu ;p
0
Bonjour,
bien dormi
MP je ne sais pas ce que c
et mon prob n est tjours pas resolu car je ne peut pas le faire depuis excel car j ai 5 fichier excel de donne que je doit copier sous un autre excel et attribue automatiquement une couleur par fichier.
Mais je pense que je ne doit pas etre loin.
bonne journee
0
ShaBoo Messages postés 392 Date d'inscription mercredi 12 septembre 2007 Statut Membre Dernière intervention 5 septembre 2009 50
26 oct. 2007 à 09:06
Bonjour,

"bien dormi"

Oui ... comme un loir ...

"MP je ne sais pas ce que c"

MP pour Mail Privé. En cliquant sur mon pseudo, tu auras la possibilité de m'envoyer des messages qui ne pollueront pas le forum.

"mon prob n est tjours pas resolu"

N'hésite pas à ouvrir un autre sujet de discussion en cas de prob.

Bonne journée.
0
lol LENA, tu t'es fait cassé dans tous les sens là!!!
xD

"du Nord-Est j'usqu'au Sud-Ouest, sans jamais passer par la Corse, Et tu casse et tu casse..." (cf. Brice de nice)


nan sérieux, c'est pas pour ca que j'écris, je voudrai matre de la couleur dans ma msgbox, mais comment on fait?
0
brice de nice quel référence!
0