base de donnees

J

JORDAN

Guest
Bonjour,

Si quelqu'un pouvait m'aider !!

D'apres fichier joint
Je souhaite, après lancement boite de dialogue, remplir les champs, puis lors de la validation envoyer les données dans la feuille "saisies" avec date aujoud'hui automatique et liens fournisseurs d'après editeur. Ex : FAYARD, distribué par HACHETTE - PLON distribué par INTERFORUM ...

Puis pouvoir préparer les commandes fournisseurs en selection auto des titres avec regroupement des memes titres en incrementant la quantite.

C'est peut etre un peu compliqué ..

Si quelqu'un pouvait m'aiguiller, merci d'avance
 

Pièces jointes

  • LIVRES.zip
    10.4 KB · Affichages: 40
  • LIVRES.zip
    10.4 KB · Affichages: 45
  • LIVRES.zip
    10.4 KB · Affichages: 45
J

JORDAN

Guest
Merci pour ton debut qui est super,

comment fais tu pour creer ta boite de dialogue ?
Je ne sais le faire qu'en ajoutant une feuille "dialogue", mais pas comme
toi, ce qui est beaucoup plus conviviale et offre plus de possibilité.
Encore merci pour ton aide précieuse.

Chao
 
T

tatiak

Guest
Pour créer une boite de dialogue (un userform) :
dans Excel : Alt+F11 (pour aller dans le vba) puis menu insertion/Userform Ensuite pour ajouter des éléments menu affichage/Boite à outils, après yapuka écrire un peu de code ...
Bonne soirée
 
J

JORDAN

Guest
Bonjour,

Merci pour ton aide

J'aimerai te soliciter encore un petit peu. Dans le code que tu m'as envoyé, au début il y a çette boucle, mais à quoi ça sert, on ne retrouve pas plus loin l'utilisation de "Temp" ? :

First = LBound(liSte)
Last = UBound(liSte)
For i = First To Last - 1
For j = i + 1 To Last
If liSte(i, 0) > liSte(j, 0) Then
Temp = liSte(j, 0)
liSte(j, 0) = liSte(i, 0)
liSte(i, 0) = Temp
End If
Next j
Next i
ListSort = liSte

Merci et à la prochaine

je te ferai parvenir le tout lorsque que j'aurai terminé
 
T

tatiak

Guest
Et bien, dans la procédure UserForm_Initialize() on récupère la liste des éditeurs de la feuille "Donnees" pour la placer dans la liste déroulante (combobox1) de la boite de dialogue.

Cette liste n'étant pas triée, la fonction Listsort s'en occupe (fonction trouvée soit sur ce site soit sur un autre et j'en profite pour en remercier d'auteur). Elle est appelée dans la procédure Initialize par la ligne : ComboBox1.List = ListSort(ComboBox1.List)

"Temp" est une variable qui n'est utilisée que par cette fonction, elle récupère la liste non triée : Temp = liSte(j, 0)
et restitue une liste triée : liSte(i, 0) = Temp

Au final dans la boîte de dialogue, c'est plus "joli" (et un peu plus fonctionnel aussi!)
 

Statistiques des forums

Discussions
312 963
Messages
2 093 996
Membres
105 906
dernier inscrit
aifa