combobox

  • Initiateur de la discussion hurricane
  • Date de début
H

hurricane

Guest
bonjour

j'ai un probleme avec les combobox ci joint le fichier
c'est une parti des pieces detachées d'un service M.A.i
je voudrais faire un interface avec un usf jusqu'a la sa va mais pour faire defiler les données dans des comboboxs là plane j'ai pourtant bien etudier
la macro de thierry 's sur les combobox

enfin voila si quelqu'un a un peu de tps pouir y jeter un coup d'oeil
et surtout un peu de tps pour m'expliquer

merci d'avance
 
B

Baroude

Guest
Bonjour hurricane,

j'ai récupéré ton fichier : tu veux dans ta combobox1 les données de la colonne B ? et je suppose que tu veux éviter les doublons ?

tu veux seulement dans le combobox1 : 1213 et 1410.

et tu veux dans la combobox2 par exemple la colonne D correspondant au code choisi dans la combo1 ? c'est ça ?

Baroude
 
H

hurricane

Guest
salut baroude

oui ta tous compris combobox 1 colonne B combobox 2 colonne C et ainsi de suite


apres quand j'aurais bien compris je voudrais pouvoir evoyer dans un odre USF que j'appelerai "devis" les données que j'aurais selection dans cette usf

hurricane
 
@

@+Thierry

Guest
Bonjour Baroude Hurricane et tout le Forum,


Je ne fais qu'une brève apparition ayant entendu parlé de moi !!, et je vous fais un petit coucou à tous et toutes.

Pour Hurricane j'ai regardé ton fichier et ton code comporte trois erreurs :

1) Pour la propriété "RowSource" il est interdit d'utiliser des Espaces dans le nom de la feuille (les accents aussis sont une source de problème) @Chistophe@ doit encore s'en rappeller de cette galère (lol)...

Donc il faut renommer ta feuille : "pièces d&tachées" en pieces_detachees

2) Topujours pour RowSource il faut le ! aussi !!! comme ceci "Sheet1!"

3) Ensuite .... en VBA Adresse s'écrit "Address" (en anglais...)


Voici ce que ton code devrait donner un fois corrigé :

Private Sub init()
Dim long_colonne As Integer
Dim plage As String
long_colonne = Sheets("pieces_detachees").Range("B65536").End(xlUp).Row
plage = Sheets("pieces_detachees").Range("B3:B" & long_colonne).Address
ComboBox2.RowSource = "pieces_detachees!" & plage
End Sub

Ceci étant juste pour récupérer tes donnée telle quelles depuis ta feuille dans ta ComboBox...Maintenant comme te le propose Baroude, si tu veux éliminer les doublons, il faut faire une approche différente (et plus compliquée) mais est-ce ta demande ?


Bon Week End à Tous/Toutes
@+Thierry
 
@

@+Thierry

Guest
Re Salut Hurricane

Oui je me doute que tu veux allez plus loin dans ce fichier :)
Mais déjà si tu corriges ce qui cloche comme je viens de te l'expliquer tu devrais pouvoir commencer par faire tourner ce UserForm... C'est déjà un bon début !

Pour ce qui est de filtrer les donner tu peux t'orienter vers la méthode "Autofilter" qui sera le plus simple pour débuter...

Sur ce fil il y a une Lien supprimé mais c'est pas exactement du cousu main pour toi... mais il y a un exemple...

Pour le reste tu as aussi d'autres démos à moi dans ce forum mais la difficulté est de les retrouver sans le moteur de recherche est sans la database... (j'y travaille un peu, mais pas trop de temps).... 19366 pour le fil de la démo auto filter et array dynamique...

Voilà si çà fait déjà un peu avancer le schilmblic !!!

Bon Samedi Soir
@+Thierry
 
H

hurricane

Guest
re-re salut

pour les correction c'est Ok c'est dingue de ne pas avoir vu address et adresse alors que je l'utilise regulierement enfin c'est comme ça

je vais etudier ta demo ce soir

et attention ce soir on les aiguilles des horloges avancent!!!!!!!

@+ merci
 
H

hurricane

Guest
Bonjour thierry

pourrais tu regarder a mon codesi tu as 5 minutes
car sa cloche avec l'autofilter

si tu preferes sa marche 1 fois apres je ne retrouve pas les données
d'origine surement une erreur toute bete mais là je ne voir plus rien

merci d'vance

@+
 

Pièces jointes

  • ytreza.zip
    27.8 KB · Affichages: 26
  • ytreza.zip
    27.8 KB · Affichages: 24
  • ytreza.zip
    27.8 KB · Affichages: 28
@

@+Thierry

Guest
Salut Hurricane et le Forum,

Humm Humm... C'est vraiment le pire ce que tu demandes en fait.... C'est un peu comme si on passe après un cataclysme ! Il ne suffit pas de copier des codes et de les mettre bout à bout pour programmer en VBA... Il faut aussi un minimum de compréhension et de logique... çà ne m'a pas pris 5 minutes mais une bonne heure pour remettre en place ce truc... (Même si à l'origine ce sont des codes que j'avais écrit !)

En plus et c'est le pire... Je pense que ce n'est absolument pas ce dont tu as besoin... Mais bon j'ai tenté de finir ce que tu avais commencé... Mais si j'avais à traiter un truc comme ceci ce n'est pas avec une listbox que je retrournerai les données filtrées par la ComboBox mais je ferai un UserForm contenant des Labels reportant chaque cellule de la Sélection faite par la Combo (vu que la clef à l'air unique "m.L.E 1032")

... Mais bon, vu que tu ne précises rien de ce que tu veux obtenir comme résultat final....

Enfin il ne s'agissait pas d'une erreur toute bête car tu n'avais pas assimilé un ordre logique dans tes évènements ("ComboBox1_Change
" lancée depuis "UserForm_Initialize" par exemple...)

De plus et là tu ne pouvais imaginer sans connaître... Pour jouer sur des Dynamic Array depuis une ComBox comme ici, celle-ci ne peut être alimentée que par la propriété "AddItem" et non "RowSource"...

Pour finir et là aussi c'est une erreur classique, la propriété ColumnCount est limité à 10 colonnes (donc 19 !! pas possible) du coup j'ai fait une seconde List Box pour reporter la suite.... Mais je le répète, c'est pas du tout comme ceci que je m'y serais pris pour faire çà mais avec des Label... Ou des TextBox locked en saisie... Plutot que des ListBox... Enfin le client est Roi ! (lol)

Enfin ci-joint le fichier corrigé... Mais c'est loin d'être un produit fini, c'est juste pour te montrer comment procéder. J'ai viré le "GoSub rien" qui ne sert à rien dans ce contexte aussi.

Enfin voilà Hurricane, c'est de toute manière un bon exercice pour toi afin de comprendre les subtilités du VBA et sur ce je te souhaite un bon dimanche avec deux heure de moins pour moi (1 pour l'heure d'été et une pour toi !! lol)

Bon Dimanche à tous et Toutes
@+Thierry
 

Pièces jointes

  • ytrezaThierry.zip
    26.4 KB · Affichages: 47
H

hurricane

Guest
salut thierry

c'est peut être un cataclysme mais je n'ai pas la science infuse et je pense qu’il est normal de faire des erreurs lorsque que l’on débute toi aussi tu as débuté ?
Je te remercie pour toute l’aide que tu m’as apporté pour résoudre ce problème et je vais essayer de faire des labels comme tu le proposes dans ton post , je pense trouver sur le forum quelques sujets qui traite de cela

merci encore hurricane
 
@

@+Thierry

Guest
re Hurricane,

Sorry de peut-être avoir été un peu rude, mais c'est ma façon de parler c'est tout, je suis formateur parfois aussi et j'applique mes méthodes quand on part pas sur la bonne trajectoire...

Bien sûr que j'ai débuté aussi... et que je n'ai pas la science infuse ! Et que lorque j'ai ouvert Excel pour la première fois il n'y avait ni Internet et des Forums comme celui là, ni des CDrom dans les magasines... En fait c'est à forces de nuits blanches à galérer dans l'aide et les bouquins... Je n'ai jamais eu la chance d'avoir la possibilité de coller des codes et de me les faire corriger...

Par contre tu ne dis rien à propos du fichier que je t'ai joint... Celà t'apporte-t'il des explications pour le pourquoi du comment du Non-Fonctionnement ?

Pour les Labels oui il y a des tas d'exemples... le problème c'est que le moteur de recherche ne fonctionne pas... Là je fais un truc, mais après je verrais si j'ai encore cinq minutes pour te montrer...

Mais c'est bien plus simple que de faire des labels que ce qu'on à fait.

bonne fin de Dimanche
@+Thierry
 
H

hurricane

Guest
Thierry

Moi aussi j'ai commencé tout seul en basic sur des pc's BBC fin 84 je ne sais pas si tu connais mais sa remonte loin puis après j'ai lâché un peu. Bon arrêtons de parlez du passer

oui les fichiers m'aide mais tu n'a qu'une parti du fichier et lorsque je rapporte l'autre parti la je vois que sa ne mène a rien

bon je vais donner plus d'infos
si tu préfères "attention s'est se que je pense et je ne suis pas un expert"
il faudrait autant de list box que de colonne puisque s'est a la base une base de données et quelle est structurer sous forme de cascade
je vois un truc du genre

list box 1--
--->list box 2--
-->list box3
etc

bien sure dans la list box 3 tu ne trouve que des données qui appartiennent a list box 2 et ainsi de suite

2eme parti
Ensuite quand tu as trouvé ton produit tu clics sur un bouton qui envoi ton produit avec ses références dans une feuille ou un usf qui s'appellerai "devis" et de là, suivant les cas tu clics pour que sa imprime une feuille de devis ou sa part par mail directement.

bon voila tu en sais plus

bon salut et a demain
 

Discussions similaires

Statistiques des forums

Discussions
312 997
Messages
2 094 275
Membres
105 980
dernier inscrit
amic