3 combobox en chaine

Bonjour à tous.

Voila je cherche à faire un formulaire avec 3 combobox en chaine.

  • une première avec la liste des portefeuilles
  • une deuxième avec la liste des immeubles du portefeuille selectionné
  • une troisième avec la liste des locataires de l'immeuble selectionné (du portefeuille selectionné).

C'est au troisième point que je suis bloqué.

Je vous joins le fichier

N'ayant pas de connaissance particulière en VBA, j'avoue avoir récupéré un bou de code pour les 2 premiers points.

Je cherche à réaliser ce travail pour un document de suivi interne à mon boulot et ça m'aiderai fortement.

Merci à vous d'avance pour votre aide !

20exemple.zip (17.69 Ko)

bonsoir,

essaie de mettre dans RowSource du ComboBox3 la formule: (Feuil1!G1:G8).

Cordialement

Henri

Merci pour ta réponse.

Mais le problème de cette méthode est que je récupère dans la liste la liste de TOUT les locataires.

Et non uniquement ceux de l'immeuble sélectionné en comboBox2...

Or, je voudrais en ComboBox3 n'avoir que les locataires de l'immeuble sélectionné en ComboBox2. Que se soit lié ...

Bonsoir

Spark54 a écrit :

j'avoue avoir récupéré un bou de code pour les 2 premiers points.

Quel est l'utilité de ce code ?

Que veux tu afficher et comment ?

Tu as des contrôles (TextBox et label) en dehors de la partie visible de l'Userform, il faut les virer ?

Pour la liste des locataires : Ce sont des noms uniques ?

A tester

Bonsoir Banzai64

Merci pour ton aide,

En fait, le but final est de préremplir un formulaire de suivi de réclamation locataire.

Le but est de facilité la saisie : une liste réduite d'actifs pour un portefeuille selectionné et un nombre de locataires réduit pour un actif selectionné.

j'ajouterai ensuite des textbox/listebox sur le type de contact (mail, telephone...), type de demande, date de reception, personne en charge de la demande...

et ainsi au fur et à mesure des demandes la base de données se constituera seule.

1 ligne par demande avec comme information, le portefeuile, l'actif, le locataire et autre info à venir.

la suite ne me pose pas de problème particulier. (via ce tuto http://youtu.be/0lLfojuPHk0 et en numérotant les "Tag")

Pour répondre à ta question

"Tu as des contrôles (TextBox et label) en dehors de la partie visible de l'Userform, il faut les virer ?"

Oui il faut les virer. Lorsque je les supprime ça me créer un bug. Je les ai donc mis de coté le temps de résoudre mon problème principal. Mais oui on peut les virer.

Ce que tu me proposes au niveau locataire est pas mal. Mais j'ai l'impression que c'est plus lié au portefeuile qu'à l'actif.

En effe,t lorsque je prends le portefeuille3 et l'actif93, la dernière comboBox me propose aussi les locataires des autres actifs du portefeuille3. Or je voudrais seulement les locataire du l'actif selectionné en 2.

En fait nous gérons énormément d'actifs et un actif peut etre mono ou multi-locataire.

Et un même locataire peut nous louer plusieurs actifs.

La numéro de locataire se fait de 1 à x selon les entrées/sortis sur l'actif.

Ainsi, un même locataire pour avoir le même nom et le même numéro mais sur 2 actifs différents.

Par contre chaque actif est unique même entre portefeuille.

Je ne sais pas si je suis super clair...

pour résumer je cherche à selectionner

  • un portefeuille
  • de la avoir le choix de l'actif mais QUE parmi le portefeuille selectionné avant
  • Puis selectionner un loctaire mais QUE parmi l'actif selectionné.

Et j'aimerai avoir en rappel le produit : "Buerau/logement"...

j'ai vu que cette fonction avait "sautée" dans ton fichier...

J'avancerai demain sur le suite du projet pour que tu ais une vision globale de ce que je recherche.

En tout cas merci à tous pour votre aide !

Je ne pensai pas avaoir des réponses si rapidement !

Bonjour

Spark54 a écrit :

pour résumer je cherche à selectionner

  • un portefeuille
  • de la avoir le choix de l'actif mais QUE parmi le portefeuille selectionné avant
  • Puis selectionner un loctaire mais QUE parmi l'actif selectionné.
En principe le code le fait

ComboBox1 ---> Colonne A

ComboBox2 ---> Colonne B (avec le filtre de la ComboBox1)

ComboBox3 ---> Colonne E (avec les filtres de la ComboBox1 et de la ComboBox2)

Testes et dis-moi où cela diverge

Spark54 a écrit :

Et j'aimerai avoir en rappel le produit : "Buerau/logement"...

Oui la macro affichait la colonne K (Produit) et c'était la colonne C (Code Immeubles)

Modifié dans le fichier joint

Spark54 a écrit :

Oui il faut les virer

Nécessaire fait

Merci beaucoup !

C'est exactement ce que je veux !

Cependant il reste un léger problème...

Lorsque je fais plusieurs tests sur le formulaire sans le refermer (exemple d'un utilisateur qui se trompe dans la saisie)

il arrive que la liste des locataires proposée déraille un peu.

Parfois ça fonctionne bien et parfois sa déraille ... Il y a un petit coté aléatoire selon le test fait juste avant.

Par exemple je prends le portefeuille3 actif88 il me propose le locataire18 => OK

On imagine que je me sois trompé d'actif et donc je sélectionne l'actif93. Et là, le formulaire me propose le locataire de l'actif sélectionné ( 93) MAIS aussi de l'actif 88 précédemment sélectionné.

Bonjour

Oui c'est bien de tester un peu plus

Un oubli de réinitialisation de la ComboBox3

Code à placer dans la macro ComboBox2_Change

Private Sub ComboBox2_Change()
' Actif
Dim J As Long

  If Me.ComboBox2.ListIndex = -1 Then Exit Sub
  Me.ComboBox3.Clear
  EnCours = True
  With Me.ComboBox3

Désolé

Impeccable !

Franchement un grand merci !

Je ne suis pas un habitué des forums et je suis impressioné par la réactivité et la serviabilité des membres !

Je mets le fichier final en pièce jointe si cela peut servir de base à quelqu'un.

Bonne continuation à tous !

Rechercher des sujets similaires à "combobox chaine"