Detecter une saisie

E

Emile

Guest
Bonsoir, j'ai besoin de votre aide car apres moultes tentatives je n y arrive toujours pas ... voici mon probleme :

J'ai plusieurs colonnes dans mon tableaux et j'aimerais que lorsque l'utilisateur rentre une valeur (une date et une heure) dans les 2 dernieres colonnes la ligne ainsi complétée se "grise", c'est a dire que les celulles recoivent un fond gris. De la meme facon si l'utilisateur enleve une des valeurs le fond des celules de la ligne concernée redeviennent "normaux" ...

J'ai bien fait une macro avec les filtres sur les 2 dernieres colonnes qui recherchent les celulles non vides puis un changement de fond puis j'ai virer les filtres, mais cette macro est tres lourdes et d'autre part elle ne s'execute pas immediatement lorsque l'utilisateur rentre la valeur.


Merci d'avance pour l'aide que vous pourrez m'apporter ...

Emile

PS : j'ai essayé de comprendre l'action 4 de la lecon N 3 disponible en telechargement mais je n'arrive pas a l'appliquée a mon probleme bien qu une partir de celle ci corresponde a ce que je veux obtenir.
 
E

Emile

Guest
Merci pour vos reponses .... mais la mise en forme conditionnelle ne repond pas a mes besoin car je ne peux pas changer la couleur de fond de plusieurs cellules de la meme ligne en fonction de la valeur d'une seule si ? si oui alors comment faire parce que je ne vois vraiment pas ...

Merci d'avance encore ...
 
J

Jacques

Guest
Bonsoir Émile,

Utilise le menu format - mise en forme conditionnelle :

Supposons que ta date et ton heure sont dans les colonnes E et F.
Sélectionne les cellules A à F - choisi le menu Format - Mise en forme conditionnelle et dans la bo^te de dialogue qui s'affiche tu choisis d'abord l'option "La formule est". Dans la zone formule tu tapes
=ET($E1<>"";$F1<>"")=VRAI
Tu cliques ensuite sur le bouton Format et tu choisis dans l'onglet Motif la couleur grise.

Ainsi si dans ta cellule E et dans ta cellule F Il y a une valeur, les cellules A à F deviendront grises. si l'une des deux cellules est vide la ligne redevient blanche. Ne mets pas de "$" après $E et $F car ainsi pour appliquer cette même mise en forme conditionnelle aux lignes en-dessous, il te suffira de sélectionner la première ligne et de duppliquer le format (avec le petit balai) pour toutes les lignes en-dessous.

Bonne soirée
 
B

Baroude

Guest
A mon avis (je persiste) cela doit être possible en macro événementiel :

1) Clic droit sur le nom de ton onglet
2) Choisis "visualiser le code"
3) Dans le menu déroulant au milieu plutot en haut : "Worksheet"
4) Dans le menu déroulant à droite : "Change"

tout ce que tu écriras dans cette macro s'effectuera à chaque changement de valeur dans 1 cellule de la feuille.

je te joins un petit exemple..... ça ira mieux...

Bon courage
Baroude
 

Pièces jointes

  • pourEmile.xls
    25.5 KB · Affichages: 122
E

Emile

Guest
Merci Merci Merci !!! Vous me sauvez !!!

Bon le chtit probleme qu'il me reste c'est que lorsque j'utilise le petit balet pour etendre la mise en forme conditionnelle a tout le document cela efface les valeurs qui etaient deja mises dans le tableau ... mais c'est pas genant, je vais juste me retaper la saisie ...

Merci beaucoup pour votre aide ...
 
J

Jean-Marie

Guest
Bonsoir tout le monde,

Oui Baroude, d'accord, c'est possible avec une macro evenementielle, mais pourquoi en arriver au code VBA, quand la mise en forme conditionnelle le permet.

Avant d'utiliser un langage de programmation, utilisons toutes les possibilités d'offre Excel, sans le VBA.

@+Jean-Marie
 

Discussions similaires

Statistiques des forums

Discussions
314 645
Messages
2 111 536
Membres
111 182
dernier inscrit
savio