[Catégorie modifiée .Net --> VBA] Infos comment Remplir (couleur) cellule excel

cs_fl7 Messages postés 3 Date d'inscription mercredi 28 septembre 2005 Statut Membre Dernière intervention 23 décembre 2010 - 22 déc. 2010 à 08:06
cs_fl7 Messages postés 3 Date d'inscription mercredi 28 septembre 2005 Statut Membre Dernière intervention 23 décembre 2010 - 23 déc. 2010 à 11:08
Bonjour a tous,
je ne sais pas ou m'adreseer ...

Ceci n'est pas des plus important mais si quelqu'un avait une solution, je le remercie.

Dans mon tableau Excel en exemple, j'ai 4 colonnes et x lignes

par exemple dans ces colonnes ;
NOM ; PRENOM ; DEMANDE ; FAIT

J'aimerais savoir si il etait possible de remplir la ligne (surlignée + texte) automatiquement lorsque dans la colonne FAIT est inscrit un texte

Encore merci a tous
Fl7

3 réponses

cs_Jack Messages postés 14006 Date d'inscription samedi 29 décembre 2001 Statut Modérateur Dernière intervention 28 août 2015 79
22 déc. 2010 à 11:06
Salut

Trois choses :
-1- Tester le contenu de la colonne D ("Fait")
-2- Coloriser la ligne si non vide OU supprimer la colorisation si vide
-3- Faire cette tâche automatiquement

Commençons par la fin :
A chaque fois que tu modifies le contenu d'une cellule, la feuille se recalcule.
A ce moment là, la Sub Worksheet_Calculate se déclenche : c'est là qu'il faudra écrire ton code pour qu'il fasse le test à chaque changement.

Avant de vouloir tester chaque cellule de la colonne D, il faut déterminer l'étendue de la recherche : inutile (et trop long) de tester 60.000 lignes si elles sont vides.
Cette syntaxe se retrouve dans beaucoup de messages de ce forum :
    Range("D65000").End(xlUp).Select
Ensuite, il suffit de retrouver le numéro de ligne où tu te trouves :
    LigneMax = Selection.Row

Maintenant que tu sais que tu vas devoir scruter les lignes de 1 à LigneMax, il te suffit de faire une boucle :
    For r = 1 To LigneMax 
        If IsEmpty(Range("D" & CStr(r)).Value) Then
            ' Vide
            ' Selection ligne entière
            Rows(CStr(r) & ":" & CStr(r)).Select
            ' Ici le code de surlignage
        Else
            ' Pas vide
            ' Selection ligne entière
            Rows(CStr(r) & ":" & CStr(r)).Select
            ' Ici le code de suppression du surlignage
        End If
    Next r

Pense à enregistrer des macros pour générer le code correspondant aux manips que tu fais à la main.

Vala
Jack, MVP VB
NB : Je ne répondrai pas aux messages privés

Le savoir est la seule matière qui s'accroit quand on la partage (Socrate)
0
cs_fl7 Messages postés 3 Date d'inscription mercredi 28 septembre 2005 Statut Membre Dernière intervention 23 décembre 2010
22 déc. 2010 à 12:55
Bonjour Jack,
merci pour ton aide ...

Je vais essayer cela

Je te dirai si ca passe ;


Merci ,
Fl7
0
cs_fl7 Messages postés 3 Date d'inscription mercredi 28 septembre 2005 Statut Membre Dernière intervention 23 décembre 2010
23 déc. 2010 à 11:08
Hello jack,
je suis en train de regarder :
mais je ne comprends pas en fait ; ceci est le script ... mais comment tu definis la couleur du texte ou color de la ligne (des que tu inscrit dans la cellule 'fait' ??

merci a toi
0
Rejoignez-nous