Autres alimenter Combobox dans USF (VBA 2003)

G.David

XLDnaute Impliqué
Bonjour
le titre ce n'est pas le plus dur, tant que la liste d'alimentation reste de taille raisonnable
Je n'ai pas mis les "pattes" dans VBA depuis près de trois ans, et je ne m'y retrouve plus
la problématique est la suivante: dans une bibliothèque, j'ai environ 5800 livres. (et ça fait un paquet d'auteurs)
j'ai pour saisir mes fiches, fait un USF qui me facilitée grandement la tâche.
Mais le combobox auteur (le combobox5) à la liste d'entrée saturée ( en fait il ne peut pas prendre tous les auteurs)
existe-t-il une méthode pour que la liste soit épurée au cours de la frappe. Que cette liste se réduise
en fonction des caractères entrés.
Mes essais pour tourner avec juste les trois premiers caractères m'ont donné mal à la tête. Et m'ont surtout
renvoyé moult messages d'erreur.
soit l'objet n'était pas existant, soit une incompatibilité de type soit une erreur 1004, etc..
enfin si plus on se trompe plus on apprends ...je dois être vachement savant à l'heure qu'il est...mais je m'en rend pas trop compte
j'ai tenté un
VB:
While len(comobobox5.value) <3 wend
super après le premier caractère , programme bloque sortit Ctrl+schidft+entree arreté le processus
j'ai tenté un
VB:
If len(combobox5.value=3 then
là le code a été très british : RAF
ce qui fonctionnait (mal) ne fonctionne plus du tout , et je ne vois pas comment me dépêtrer de ça
 

fanfan38

XLDnaute Barbatruc
Bonjour
Perso je n'ai jamais vu un combobox saturé....
je te propose: (a mettre dans les macro de l'userform)
VB:
Private Sub ComboBox5_Change()
'ATTENTION! il ne faut pas que dans les proprietes du combobox la ligne rowsource soit rempli
Dim derlig As Long
Me.ComboBox5.Clear
If Len(Me.ComboBox5.Value) > 1 Then Exit Sub
derlig = Range("A" & Rows.Count).End(xlUp).Row
For i = 2 To derlig
  If Left(Range("A" & i).Value, 1) = Me.ComboBox5.Value Then
   Me.ComboBox5.AddItem Range("A" & i).Value
  End If
Next
End Sub

A+ François
 
Dernière édition:

G.David

XLDnaute Impliqué
Bon j'ai tou réécris et maintenant j'ai l'intégralité de la colonne auteur dans le CBB (et ça faisait deux jours que je me ronger les ongles pour trouver le pourquoi... je tape avec le bout des deuxièmes phalanges) :mad:
en somme j'ai toute la hauteur des auteurs (facile...mais ça m'évite de me mettre à pleurer)
 

G.David

XLDnaute Impliqué
@fanfan38
Je m'y suis rendu avant de poster, je n'ai eu que des erreurs exécutions et de type etc, et je n'ai pas compris la philosophie du code ( ou je manque un truc, mais là le combobox présente le premier nom compatible donc ça va me suffire d'autant que la liste est triè par ordre alphabétique....
Je ne vais pas réinventer l'eau tiède...ce serait du plagiat:rolleyes:
au final, j'essayais juste de programmer un truc que le CBB fait nativement...o_O on va dire que c'est résolu....en fait pour être honête c'est le genre de question qui n'aurait même pas du être posée
 

Discussions similaires

Statistiques des forums

Discussions
314 628
Messages
2 111 337
Membres
111 104
dernier inscrit
JEMADA