Formulaire Liste de validation (userform) / Ajout

  • Initiateur de la discussion Initiateur de la discussion hypo78
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

hypo78

XLDnaute Impliqué
Bonsoir à tous,

un petit formulaire tout bête à partir d'un userform.

2 combobox (client et ville) où je voudrais que chaque saisie alimente 2 listes dynamiques Client et Ville.

Il y a bien l'exemple de JB Boisgontier, mais çà fait des heures et des tentatives où je n'arrive pas à l'adapter.

Merci d'avance.
 

Pièces jointes

Re : Formulaire Liste de validation (userform) / Ajout

Bonjour
Sur ta feuille clients il y a une liste de noms
Tu les sélectionnes et clic droit dessus et choisis Nommer une plage (par exemple clients à la liste des clients)
ensuite clic droit sur 1 combobox et à la ligne rowsource mets le noms de ta plage
Idem pour la ville...

A+ François
 
Re : Formulaire Liste de validation (userform) / Ajout

Re,
J'ai ajouté à la macro de validation de l'userform après avoir refait les cellules nommées (pour Bdclients=Clients!$A$2:$A$5)

If ComboBoxNom.ListIndex = -1 Then
derlig = Sheets("Clients").Range("a65535").End(xlUp).Row
Sheets("Clients").Cells(derlig + 1, 1).Value = ComboBoxNom.Text
ActiveWorkbook.Names("Bdclients").RefersToR1C1 = "=Clients!R2C1:R" & derlig & "C1"
End If
tu peux ajouter un tri avant le endif...

A+ François
 
Re : Formulaire Liste de validation (userform) / Ajout

Re,

merci fanfan,

çà fonctionne, je vais essayer d'ajouter le tri et d'empêcher les doublons, car j'ai réussi à en faire!!

Pour que je puisse l'adapter à d'autres fichiers, peux-tu m'expliquer le fonctionnement de ta macro entre autre "derlig"

Merci d'avance.
 
Re : Formulaire Liste de validation (userform) / Ajout

Bonjour Tatiana, re Fanfan,

Code:
ActiveWorkbook.Names("Bdclients").RefersToR1C1 = "=Clients!R2C1:R" & derlig & "C1"

et çà si j'ai bien compris, çà va chercher la plage de cellules nommée et çà lui ajoute 1 en nombre de ligne. C'est çà?

Pour le tri, je suis pas contre un petit coup de main....

Cordialement
 
Dernière édition:
Re : Formulaire Liste de validation (userform) / Ajout

Re,

j'ai voulu adapter le code pour ma colonne ville (colonneB), mais à chaque fois il me renomme ma liste en colonneA.
Là c'est la preuve que je n'ai pas saisi toutes les subtilités de ton code.
Code:
 If ComboBoxNom.ListIndex = -1 Then
derligclient = Sheets("Clients").Range("a65535").End(xlUp).Row
Sheets("Clients").Cells(derligclient + 1, 1).Value = ComboBoxNom.Text
ActiveWorkbook.Names("Bdclients").RefersToR1C1 = "=Clients!R2C1:R" & derligclient & "C1"
End If
If ComboBoxVille.ListIndex = -1 Then
derligville = Sheets("Clients").Range("b65535").End(xlUp).Row
Sheets("Clients").Cells(derligville + 1, 2).Value = ComboBoxVille.Text
ActiveWorkbook.Names("Bdville").RefersToR1C1 = "=Clients!R2C1:R" & derligville & "C1"
End If

Une autre requête. Je veux rendre la saisie obligatoire du numéro d'inventaire, çà j'ai réussi avec une MsgBox, mais pour autant le transfert des autres données dans le tableau se fait , donc si l'utilisateur ferme le formulaire après le message, à la prochaine saisie il écrasera la ligne qu'il vient de créer sans numéro de dossier.

Merci pour votre aide.

Edit : Pour ma colonne B, j'ai trouvé mon erreur RefersToR1C1 = "=Clients!R2C1:R" & derligville & "C1"

Pour le tri, je suis toujours demandeur....
 

Pièces jointes

Dernière édition:
Re : Formulaire Liste de validation (userform) / Ajout

Bsr,

je reviens toujours avec le même fichier, car mes listes de validation des combobox ne m'apporte pas satisfaction.
En effet, elle me fait parfois des doublons, et je n'ai pas de tri alphabétique.

Quelqu'un pour jeter un oeil??

Merci
 

Pièces jointes

Dernière édition:
Re : Formulaire Liste de validation (userform) / Ajout

Re,

Je reviens vers toi car le fichier fonctionne sous Excel2007, mais au lancement de l'Userform sous Excel 2003, j'ai le message suivant :
Erreur d'exécution 438. Propriété ou méthode non gérée par cette objet.

Quand je lance le débogage : c'est la ligne de lancement de l'Userform qui se surligne.

L'ancienne version, sans le tri fonctionne sur 2003.... en quoi le tri change qque chose sur l'Userform?

Cordialement.
 
Re : Formulaire Liste de validation (userform) / Ajout

Bonjour
remplace la macro de tri par celle ci

Sub tri()
Application.ScreenUpdating = False
Sheets("Clients").Select
Columns("A:A").Select
Selection.Sort Key1:=Range("A2"), Order1:=xlAscending, Header:=xlGuess, _
OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom, _
DataOption1:=xlSortNormal
Columns("B:B").Select
Selection.Sort Key1:=Range("B2"), Order1:=xlAscending, Header:=xlGuess, _
OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom, _
DataOption1:=xlSortNormal
Sheets("Suivi Dossier").Select
Application.ScreenUpdating = True
End Sub

A+ François
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

L
Réponses
2
Affichages
1 K
Laurent_7
L
K
Réponses
38
Affichages
10 K
kinders59
K
T
  • Question Question
Réponses
125
Affichages
14 K
H
  • Question Question
Réponses
2
Affichages
2 K
hub72
H
Retour