Tri avec combobox dans userform

whooki

XLDnaute Occasionnel
Bonjour à tous,

Voilà je me prends la tête depuis pas mal de temps dans un USF.
J’ai établi un formulaire pour gérer des fournisseurs, et en // créer un code pour réaliser des demandes de prix ( qui n’est pas présent sur l’exemple).
J’ai créé ( en reprenant des exemples du forum) une combobox pour trier dans un premier temps mes fournisseurs par catégories, puis dans la seconde combobox il me met bien les fournisseurs triés. En revanche, lorsque je veux sélectionner les fournisseurs triés selon leur catégories dans les textbox associés( contact, tel, fax etc.. )le trie n’est pas réalisé. Le 2eme combobox prend automatiquement la première valeur de la colonne b.

Je suis complètement perdu, et je ne sais pas comment remédier à cela.

Autre problème, je souhaiterais à partir du USF vierge, créer (ou mettre à jour si usf chargé avec un fournisseur) un fournisseur en cliquant sur le bouton adéquate, le tout en triant la base de données fournisseurs par la colonne A.

Merci par avance de votre retour.
 

Pièces jointes

  • Classeur4.xlsm
    25.8 KB · Affichages: 117
  • Classeur4.xlsm
    25.8 KB · Affichages: 118
  • Classeur4.xlsm
    25.8 KB · Affichages: 118

whooki

XLDnaute Occasionnel
Re : Tri avec combobox dans userform

bonjour,

Oui effectivement, j’ai essayé d’adapter le code de Robert ( issu du fichier Whooki_v01.xls) vers le mien, et c’est là que ça plante.

En ce qui concerne le fichier démoOutIdx.xls, il plante au niveau du code Function Nomplage(option byval rg as range, etc….), à un moment il me met erreur de compilation, projet ou bibliotheque introuvable, et Mid$ est surligné.

Je comprends pas trop votre programmation, elle est un peu complexe pour moi. En fait j'ai repris le code de Robert du fichier Whooki_v01.xls, lorsque je prends la combobox fournisseur directement sans passé par la catégorie, ca me met le code d'erreur..
 

fhoest

XLDnaute Accro
Re : Tri avec combobox dans userform

Bonjour à tous,

Voici ce que je corrigerai:
Code:
Private Sub ComboBox1_Change()
Dim L_drligne As Long
Dim c As Range
Dim ent As Integer
L_drligne = Sheets("fournisseurs").Range("a65000").End(xlUp).Row

For Each c In Sheets("fournisseurs").Range("a2:a" & L_drligne)
If c Like ComboBox1 Then ent = c.Row
Next
If ent = 0 Then Exit Sub

TextBox4 = Sheets("fournisseurs").Cells(ent, 2) 'contacts'
TextBox5 = Sheets("fournisseurs").Cells(ent, 3) 'téléphone'
TextBox6 = Sheets("fournisseurs").Cells(ent, 4) 'fax'
TextBox45 = Sheets("fournisseurs").Cells(ent, 5) 'mail'

With Sheets("demande")

Range("l13").Value = ComboBox1.Value 'fournisseurs'
Range("q17").Value = TextBox5.Value 'telephone'
Range("r17").Value = TextBox6.Value 'fax'
Range("l16").Value = TextBox4.Value 'contact'
Range("l20").Value = TextBox45.Value 'email'

Range("l18").Value = Range("s17").Value
End With
End Sub

A bientôt.
 

Dranreb

XLDnaute Barbatruc
Re : Tri avec combobox dans userform

Bonjour je vous ai très précisément indiqué la marche à suivre dans ce cas
Si c'est une histoire de bibliothèque, allez dans VBE, menu Outils, Références, décochez d'éventuels "MANQUANT" marqués comme ça en majuscules.
J'ai pourtant mis des commentaires ! Qu'est-ce que vous ne comprenez pas ?
 

whooki

XLDnaute Occasionnel
Re : Tri avec combobox dans userform

bonjour,

Disons que je ne suis pas habitué à votre programmation qui est plus élaborée que mon code.

Sinon j'ai repris le code de fhoest qui fonctionne parfaitement.

Merci beaucoup pour votre aide respective.

Bonne continuation
 

Dranreb

XLDnaute Barbatruc
Re : Tri avec combobox dans userform

Avant de rejeter ma solution, vous devriez d'abord arriver à la faire tourner pour avoir tous les éléments pour en décider.
Sinon je doute que la solution que vous retiendrez soit aussi conviviale tout en ayant les niveaux de sécurité souhaitables.
Et puis, vous savez, les mauvaises habitudes de programmation, ça se change au profit de meilleures.
 

fhoest

XLDnaute Accro
Re : Tri avec combobox dans userform

Bonjour,

Je n'ai pas suivi le fil entièrement mais je soutiens Dranreb dans le fait qu'il faut essayer de faire tourner sa solution car c'est une personne respectueuse et talentueuse, je n'ai pas approfondi plus,j'ai juste essayer de répondre a la demande de #1.

Désolé Dranreb, je ne tenais vraiment pas à mettre la zizanie. (mais juste aider l'auteur dans sa demande).

Pour ma part je vais sans doute jeté un oeil du coté de ta solution car moi même je suis intéressé pour progresser et améliorer mon style de programmation,pour être un jour meilleur.

Salutation et à bientôt.
 

Robert

XLDnaute Barbatruc
Repose en paix
Re : Tri avec combobox dans userform

Bonjour le fil, bonjour le forum,

Avant de rejeter ma solution, vous devriez d'abord arriver à la faire tourner pour avoir tous les éléments pour en décider.
Sinon je doute que la solution que vous retiendrez soit aussi conviviale tout en ayant les niveaux de sécurité souhaitables.
Et puis, vous savez, les mauvaises habitudes de programmation, ça se change au profit de meilleures.

Woaw carrément le forcing ! Pourquoi ne pas accepter aussi qu'un utilisateur se sente plus à l'aise avec un code qu'il comprend, même si il est moins élaboré que celui que tu proposes ? il sera plus à même à le modifier, à l'adapter, non ?
Il m'est parfois arrivé de voir ma proposition rejetée pour une autre qui me semblait moins efficace mais jamais je ne me suis permis une remarque. Au contraire, si ma proposition était acceptée et j'en voyais d'autres meilleures je le signalais à la personne en lui disant que mon code n'était pas, à mon sens, le meilleur.
Je suis étonné par cette attitude quelque peu méprisante pour les auteurs des autres codes (entre autre le mien)...
 

Dranreb

XLDnaute Barbatruc
Re : Tri avec combobox dans userform

Bonjour.

Non, non Robert, il n'y a pas de comparaison possible car il me semble que tu proposait une partie seulement de la programmation du userform, sur laquelle ma critique ne portait pas spécialement. Je réagissais seulement à l'attitude du demandeur qui me semblait décider sur de mauvais critères: c'est l'efficacité du résultat qui devrait être déterminante et non la façon de programmer pour peu qu'il y ait moyen de s'y retrouver, ce qui est quand même le cas, je pense avec un minimum d'effort. Excuse moi du malentendu.

Merci fhoest de ton soutien. Pas vu passé de menace de semer une quelconque zizanie.

Cordialement.
 

Discussions similaires

Statistiques des forums

Discussions
312 492
Messages
2 088 942
Membres
103 989
dernier inscrit
jralonso