Userform, liste deroulante, données en couleur

Bonjour,

J'ai créé dans le fichier explicatif ci joint une Userform très simple à comprendre.

- Je souhaiterai dans un premier temps que les projets s'affichent dans la liste déroulante de mon Userform.

(J’arrive à les faire afficher mais seulement pour une sélection, le problème c'est que je serai amené à ajouter d'autres lignes projets et j'aimerai qu'elles s'ajoutent automatiquement à la liste déroulante.)

* Je ne sais pas si c'est possible mais je préférerai les avoir par ordre décroissant: Dernière ligne de donnée écrite en haut de la liste déroulante *

- Je souhaiterai dans un deuxième temps que: en fonction de la valeur choisie dans la liste déroulante, apparaissent les valeurs correspondante aux états 1, 2 et 3

(Le tableau sur lequel je travaille doit faire apparaitre beaucoup plus de donnés qui heureusement sont sur la même ligne mais sur des colonnes différentes c'est pourquoi j'avais pensé à faire apparaitre les résultats dans des listes comme j'ai plus ou moins vu dans le tutoriel)

- Je souhaiterai dans un dernier temps que les couleurs qui vont avec les données ressortent dans l'Userform

Je sais que j'en demande beaucoup mais je suis en train d'apprendre!

Merci beaucoup de m'aider

Cordialement Bruno

Bonjour

Pour débuter

Merci beaucoup!

Aurais tu un E-mail pour que je puisse t'envoyer le fichier sur lequel je travaille?

(en le Zippan j'arrive a 7,5 Mega et je ne peut donc pas le charger ici)

J'ai mis des validations de données dans certaines colonnes: H,I, J, L,M... combinèes à des formats conditionels pour avoir un code de couleur.

Les couleurs dont jai besoin (rouge, jaune, vert surtout) sont les mêmes que mes formats conditionels et sont repertoriés dans les listes dont je me sert pour effectuer mes validations de données: A partir de la colonne BL (dans les premieres lignes)

Le fichier est lourd! J'ai juste besoin de comprendre le principe et apres je me debrouille!

Encore merci de m'aider

Bonjour

IL faut colorier quoi ?

Juste l'intérieur des contrôles : En principe pas de souci si la couleur n'est pas obtenue par une MEFC et seulement une couleur de fond pour le contrôle

J'ai réussi grâce à ton aide à afficher les données que je voulais dans le fichier sur lequel je travaille.

En ce qui concerne les couleurs, je souhaiterai, si l'on reprend le fichier joint:

Lorsque l'Userform est lancée par exemple:

Si je choisis dans la liste déroulante : Projet 1 alors j'aurai:

Etat 1: Disponible en Vert; Etat2: No Disponible en Rouge; Etat 3: Prêt en vert

Ou bien par exemple

Si je choisis dans la liste déroulante Projet 6 alors j'aurais:

Etat 1: attente en jaune; Etat2: Attente en jaune; Etat 3: non Prêt en Rouge

Le but est de voir correctement (grâce à un jeu de couleur) sur une même Userform et pour un même projet toutes les cellules correspondantes à un état critique (rouge), un état intermédiaire (Jaune) et un état achevé (vert)

Merci beaucoup!

Bonjour

Banzai64 a écrit :

En principe pas de souci si la couleur n'est pas obtenue par une MEFC

Je pense que c'est le cas dans ton fichier car j'ai vu des Mise En Forme Conditionnelles

Et quand j'ouvre ton fichier il n'a aucune couleur

En 'rusant" (j'aime bien ce mot)

Merci j'arrive a le faire marcher ! ca va me prendre un temps fou pour l'adapter a mes 50 colomnes sur lesques je travaille mais avec un peu de patience, ca devrai le faire!

Merci beaucoup!!

Bonjour

Joins un fichier représentatif : Il y a peut-être une solution plus simple

Bon courage

Voici un fichier représentatif avec son Userform

Comme je debute sur VBA, grâce a toi, ce que je fais est peut-être un peu long mais au moins ca fonctionne!!

Je me surprend même tous les jours de ce que j'arrive a faire

Merci de ton aide!

Cdt, Bruno.

Bonjour

Je ne charge même pas ton fichier car c'est un fichier .xlsx donc pas de macro

Joins le bon fichier avec macros : extension .xlsm

Pas de problème pour mon fichier j'ai terminé de rentrer les codes. En faisant des procédures, ce n'est pas aussi long que je le pensait et ca marche très bien!

En revanche j'ai un problème concernant ma liste deroulante:

En fait je viens chercher le projet que j'utilise dans ma liste déroulante dans la feuille 2

(feuille rempli par une autre personne)

Pour ne pas avoir de 0 qd le projet feuille 2 n'a pas encore été créé je deroulle la fonction suivante dans la feuille 1 :

=IF(Sheet2!G15="";"";Sheet2!G15)

Du coup comme il y a des valeurs qui sont ="" , Excel m'affiche des valeurs ="" (lignes blanches) dans ma liste déroulante.

Voir fichier explicatif

Merci encore de ton aide!

Cdt Bruno

Bonjour

Remplaces la macro équivalente par celle-ci

Private Sub UserForm_Initialize()
Dim J As Long
Dim Ws As Worksheet

  Set Ws = Sheets("Sheet1")
  With Me.ComboBox1
    .ColumnCount = 2
    .ColumnWidths = "-1;0"
    For J = Ws.Range("D" & Rows.Count).End(xlUp).Row To 11 Step -1
      If Ws.Range("D" & J) <> "" Then
        .AddItem Ws.Range("D" & J)
        .List(.ListCount - 1, 1) = J
      End If
    Next J
  End With
End Sub

Merci, comme d'habitude ca marche!

J'aurai du y penser à cette petite astuce

Rechercher des sujets similaires à "userform liste deroulante donnees couleur"