XL 2021 RÉSOLU - remplir ComboBox selon les données d'une autre ComboBox

micie1509

XLDnaute Junior
Bonjour,

Je ne sais pas si c'est possible (même si je crois que non). Mais tout d'un coup ...

J'ai un UserForm qui contient 4 lignes: ( Date, Type de dépenses, Description et Montant). Type de dépenses et Description sont des ComboBox.
J'ai une feuille qui contient des données, dont les Type de dépenses : ( Revenus, Habitation, Services Publics, Transports, Alimentation, Habillement, Soins de santé, Divertissement et Autres )
J'ai plusieurs feuilles qui sont nommées comme les Type de dépenses : ( Revenus, Habitation, Services Publics, Transports, Alimentation, Habillement, Soins de santé, Divertissement et Autres )

Exemple: j'aimerais que lorsque que dans Type de dépenses, je sélectionne Revenus, le ComboBox Description aille chercher ses données dans la feuille Donnes, D2 à D3
Si par contre je choisi Habitation dans Type de dépenses, j'aimerais que le ComboBox Description aille chercher ses données dans la feuille Donnees G2 à G8 et ainsi de suite pour chacun des types de dépenses.

Une fois terminé, lorsque je clique sur le CommandButton Suivant, j'aimerais que les informations entrées dans le UserForm se retrouve sur la prochaine ligne vide dans la feuilles qui a le même nom que le Type de dépenses. Si dans Type de dépenses, j'ai choisi Revenus, j'aimerais alors que les informations du UserForm soient copier dans la feuille Revenus.

J'espère que j'ai été claire (et en même temps, j'en suis pas sûre) 🤣

Merci à tous ceux qui ont pris le temps de me lire.
 

Pièces jointes

  • TEST.xlsm
    39.2 KB · Affichages: 5

TooFatBoy

XLDnaute Barbatruc
Bonjour,

Exemple: j'aimerais que lorsque que dans Type de dépenses, je sélectionne Revenus, le ComboBox Description aille chercher ses données dans la feuille Donnes, D2 à D3
Si par contre je choisi Habitation dans Type de dépenses, j'aimerais que le ComboBox Description aille chercher ses données dans la feuille Donnees G2 à G8 et ainsi de suite pour chacun des types de dépenses.
As-tu essayé d'utiliser des Tableaux Structurés portant le nom de la "Description" (tbd_Revenus, tbd_Habillement, tbd_Habitation, etc.) ?
(voir proposition en pièce jointe)


Une fois terminé, lorsque je clique sur le CommandButton Suivant, j'aimerais que les informations entrées dans le UserForm se retrouve sur la prochaine ligne vide dans la feuilles qui a le même nom que le Type de dépenses. Si dans Type de dépenses, j'ai choisi Revenus, j'aimerais alors que les informations du UserForm soient copier dans la feuille Revenus.
Même question : as-tu essayé d'utiliser des TS portant le nom de la "Description" (t_Revenus, t_Habillement, t_Habitation, etc.) ?
 

Pièces jointes

  • TEST_(TFB-v01).xlsm
    48.6 KB · Affichages: 8
Dernière édition:

micie1509

XLDnaute Junior
Merci beaucoup TooFatBoy pour votre réponse et le temps que vous m'avez accordé.
J'apprécie grandement. 😊

Ce nest pas exactement ce que je cherchais. Je voulais pouvoir travailler avec un UserForm car je trouve cela très pratique et surtout rapide lorsque tu as beaucoup de données à entrer en même temps.

Comme la nuit porte conseil, j'ai réglé mon problème.

J'ai plutôt choisi de créer un UserForm pour chacune de mes Type de dépenses.

Ensuite j'ai fait une liste déroulante avec mes Type de dépenses à partir de Contrôle Active X avec une cellule liée. Et j'ai rajouté ce code :

VB:
Private Sub ComboBox1_Change()

 If Range("$P$2").Value = "REVENUS" Then
        Call FormulaireRevenus
    End If
      
    If Range("$P$2").Value = "HABITATION" Then
        Call FormulaireHabitation
    End If


End Sub

Je vais le finaliser avec chacun de mes Type de dépenses et je crois que ceci fonctionnera très bien pour moi.
 

Pièces jointes

  • TEST.xlsm
    50.4 KB · Affichages: 8

TooFatBoy

XLDnaute Barbatruc
Merci beaucoup TooFatBoy pour votre réponse et le temps que vous m'avez accordé.
J'apprécie grandement. 😊

Ce nest pas exactement ce que je cherchais. Je voulais pouvoir travailler avec un UserForm car je trouve cela très pratique et surtout rapide lorsque tu as beaucoup de données à entrer en même temps.
Ce que j'ai fait est simplement de mettre à jour ta ComboBox2 en fonction de l'item choisi dans la ComboBox1, car il me semblait que c'était ce que tu demandais dans la première partie de ta question..

Donc il y a bien toujours utilisation de ton UserForm, et du coup je ne comprends pas bien ta réponse. 🤔
 
Dernière édition:

TooFatBoy

XLDnaute Barbatruc
Comme la nuit porte conseil, j'ai réglé mon problème.

J'ai plutôt choisi de créer un UserForm pour chacune de mes Type de dépenses.
Certes, on dit que la nuit porte conseil, mais de là à dire que ce soit forcément un bon conseil... c'est moins sûr : ça ne va pas être très pratique le jour où tu voudras ajouter un nouveau type de dépense, ou une catégorie dans un type de dépense.
 

micie1509

XLDnaute Junior
Allo,
Je suis tellement désolée, je n'avais pas compris ce que tu avais fait.

Je croyais que tu n'avais que mis que mes données sous forme de tableau avec un filtre et je me suis dit que ça ne règlait pas mon problème. 🤪

Honnêtement, je n'avais pas chercher plus loin. Mais lorsque j'ai lu ta réponse :
Ce que j'ai fait est simplement de mettre à jour ta ComboBox2 en fonction de l'item choisi dans la ComboBox1, car il me semblait que c'était ce que tu demandais dans la première partie de ta question..

Donc il y a bien toujours utilisation de ton UserForm, et du coup je ne comprends pas bien ta réponse. 🤔
Je me suis dit que j'étais passée à côté de quelque chose. 🤣

Effectivement, c'est exactement ce que j'avais demandé et c'est GÉNIAL ! Ma solution n'arrive pas à la cheville de la tienne. C'était une manière de m'en sortir, mais pas ce que je voulais au départ.

Merci TELLEMENT ! 😊
 

TooFatBoy

XLDnaute Barbatruc
OK, je comprends mieux ta réponse à ma proposition. 😉


Une fois terminé, lorsque je clique sur le CommandButton Suivant, j'aimerais que les informations entrées dans le UserForm se retrouve sur la prochaine ligne vide dans la feuilles qui a le même nom que le Type de dépenses. Si dans Type de dépenses, j'ai choisi Revenus, j'aimerais alors que les informations du UserForm soient copier dans la feuille Revenus.
Faut-il chercher une solution pour cette partie de ta question initiale, ou vas-tu t'en sortir toute seule ?
 

micie1509

XLDnaute Junior
Est-ce que tu crois que c'est possible de faire en sorte que la date et le montant se retrouvent dans dans la feuille portant le nom du Type de dépenses et sous la colonne ayant le nom de la Catégorie du Type de dépenses choisi ?

Moi ça m'a l'air pas mal compliqué. J'ai des idées, mais pas les moyens de les concrétiser.
Une fois que quelque chose fonctionne, je me bute à un autre problème. 🤣

Mon petit cours sur les macros n'étaient vraiment pas complet. Vivement la retraitre que je m'y remette. 😊
 

TooFatBoy

XLDnaute Barbatruc
Est-ce que tu crois que c'est possible de faire en sorte que la date et le montant se retrouvent dans dans la feuille portant le nom du Type de dépenses et sous la colonne ayant le nom de la Catégorie du Type de dépenses choisi ?
Je n'ai pas cherché, mais oui je crois cela possible.

Je dirais que le fait d'utiliser des TS portant des noms ad hoc et des colonnes portant également des noms bien choisis devrait simplifier la chose. ;)
 

TooFatBoy

XLDnaute Barbatruc
Une proposition en pièce jointe, dans laquelle j'ai modifié la macro CommandButton1_Click.


[edit] Je n'ai fait que les types de dépense "Revenus" et "Habitation". [/edit]
 

Pièces jointes

  • TEST_(TFB-v02).xlsm
    50.1 KB · Affichages: 14
Dernière édition:

micie1509

XLDnaute Junior
Bonjour,

Merci beaucoup de mettre du temps sur mon projet.

Lorsque j'ouvre le UserForm et que je choisis le Type de dépenses, le ComboBox "Description" n'est plus mis à jour et j'ai un message d'erreur.
 

Pièces jointes

  • test.pdf
    773.7 KB · Affichages: 9

micie1509

XLDnaute Junior
Il semble bloqué sur la date. J'ai essayé 2023-09-05 et 05-09-2023.

Pour ce qui est de la description, puisqu'elle ne se met pas à jour dans le ComboBox, j'ai essayé sans rien inscrire et ensuite j'ai essayé en inscrivant moi même "vous" comme description dans le ComboxBox. J'ai toujours l'erreur 1004. La méthode 'Range' de l'objet '_Global' a échoué.
 

Discussions similaires

Statistiques des forums

Discussions
315 094
Messages
2 116 146
Membres
112 669
dernier inscrit
Guigui2502