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 !
Bonjour , mon problème doit être bidon pour vous pro d'Excel mais moi je ne comprend pas comment marche les boucles.
J'ai un userform dans lequel je rentre des donnée et lorsque je valide elle sont copier dans la feuil2 , je voudrai qu"il copie autant de fois les donnée rentrée qu'il y a de quantité rentrée dans la textbox3 , des conseil les amis ?
Peut-être, un jour, ai-je été un pro d'excel (mékescequeuecesqssa?) en tous cas ma triste carrière ne m'a permis d'acquérir le don de macroter sur des images ! Vous avez le secret pour ça ? 🙂
Peut-être, un jour, ai-je été un pro d'excel (mékescequeuecesqssa?) en tous cas ma triste carrière ne m'a permis d'acquérir le don de macroter sur des images ! Vous avez le secret pour ça ? 🙂
Private Sub CommandButton1_Click()
Dim ligne As Integer
If MsgBox("confirmez-vous l'ajout des données?", vbYesNo, "confirmation") = vbYes Then
Worksheets("Feuil2").Select
ligne = Sheets("Feuil2").Range("A456541").End(xlUp).Row + 1
Cells(ligne, 1) = ListBox1.Value
Cells(ligne, 2) = TextBox2.Value
Cells(ligne, 3) = TextBox1.Value
Range(Cells(ligne, 1), Cells(ligne, 3)).Resize(TextBox3).FillDown
End If
End Sub
sinon, tu as quelques soucis..
ta listbox n'est pas bien chargée au lancement du formulaire
tu ne prends que la liste A2:A10.... ==> tout ce qui est après n'est pas listé
je ne sais pas trop ou tu en es du développement de ton fichier: est ce encore une ébauche, ou ce genre de souci doit etre résolu maintenant??
sinon, tu as quelques soucis..
ta listbox n'est pas bien chargée au lancement du formulaire
tu ne prends que la liste A2:A10.... ==> tout ce qui est après n'est pas listé
je ne sais pas trop ou tu en es du développement de ton fichier: est ce encore une ébauche, ou ce genre de souci doit etre résolu maintenant??
Alors j'en suis vraiment au début , et je n'est pas toute les astuces , je n'est lister que A2 à A10 car je n'aurai pas 600 produit et que je n'est pas envie davoir 3 tonne de blanc dans la liste box ^^
ok,
alors quelques conseils
1) donne des noms parlants à tes controls: plutot que textBox1.. appelle le tbDLC ==> comme ca.. quand tu sera dans le code associé, tu saura sur quoi tu travailles
2) utilises des plages nommées pour lister tes elements: exemple de ta liste produit
en définissant de manière dynamique (voir l'ex dans le gestionnaire de nom), la liste s'adapte automatiquement aux éléments qui sont listés: si tu ajoutes ou supprimes des produits, la liste se mettra à jour
tu peux ainsi utiliser le nom de la liste pour charger ta listbox
pour écrire sur une feuille: evite au maximum les feuille.activate ou . select..
==> ca ralenti le programme
==> c'est source de pb
==> et ca donne du code pas beau :-D
en parlant de code pas beau: il faut absolument se forcer à indenter les instructions pour identifier les blocs
ex: un des deux est plus lisible..
VB:
if condition then
faire instruction
else
faire autre instruction
end if
VB:
if condition then
faire instruction
else
faire autre instruction
end if
voir pj pour illustrer les quelques points évoqués[/code]
ok,
alors quelques conseils
1) donne des noms parlants à tes controls: plutot que textBox1.. appelle le tbDLC ==> comme ca.. quand tu sera dans le code associé, tu saura sur quoi tu travailles
2) utilises des plages nommées pour lister tes elements: exemple de ta liste produit
en définissant de manière dynamique (voir l'ex dans le gestionnaire de nom), la liste s'adapte automatiquement aux éléments qui sont listés: si tu ajoutes ou supprimes des produits, la liste se mettra à jour
tu peux ainsi utiliser le nom de la liste pour charger ta listbox
pour écrire sur une feuille: evite au maximum les feuille.activate ou . select..
==> ca ralenti le programme
==> c'est source de pb
==> et ca donne du code pas beau :-D
en parlant de code pas beau: il faut absolument se forcer à indenter les instructions pour identifier les blocs
ex: un des deux est plus lisible..
VB:
if condition then
faire instruction
else
faire autre instruction
end if
VB:
if condition then
faire instruction
else
faire autre instruction
end if
voir pj pour illustrer les quelques points évoqués[/code]
Super merci de tes conseilles , tu et un vrai professeurs ^^,
Tu serai me dire si il et possible dans un autre userform de sélectionner un produit dans une listbox par exemple Cabillaud et qu'il maffiche tous les cabillauds enregistrée dans l'ordre de DLC , en pouvant sélectionner les quels à enlever?
Merci de ton aide
exemple
dans la feuille 1: tu as une liste de produits que tu peux utiliser..
y a t il d'autres listes à définir dont tu aurais besoin? genre "Poisson - Viande - legumes"..
site de production, site de consomation, restaurant.. etc etc..
la feuille 1 pourrait accueillir toutes ces listes: et s'appeler "DefListes" plutot que feuil1
ta feuille2: celle ou tu colles les infos: c'est représente quoi? un stock ? => donc, la feuille pourrait s'appeler Stock
quelles sont les infos qui apparaitront ? pour l'instant, il y a en colA le produit, en colB le jour de saisie (tbdateJour du formulaire) et en col C la DLC..
il y a aura autre chose?
lors de la copie, tu as copié Qté de fois la meme ligne==> du coup..à quoi ca sert d'avoir Qtés de lignes identiques ? y aura t il d'autres colonnes avec une info qui permettra de distinguer toutes les lignes ?
une fois que tu aura défini tout ca, les formulaires ne seront que des outils pour filtrer les infos..
exemple
dans la feuille 1: tu as une liste de produits que tu peux utiliser..
y a t il d'autres listes à définir dont tu aurais besoin? genre "Poisson - Viande - legumes"..
site de production, site de consomation, restaurant.. etc etc..
la feuille 1 pourrait accueillir toutes ces listes: et s'appeler "DefListes" plutot que feuil1
ta feuille2: celle ou tu colles les infos: c'est représente quoi? un stock ? => donc, la feuille pourrait s'appeler Stock
quelles sont les infos qui apparaitront ? pour l'instant, il y a en colA le produit, en colB le jour de saisie (tbdateJour du formulaire) et en col C la DLC..
il y a aura autre chose?
lors de la copie, tu as copié Qté de fois la meme ligne==> du coup..à quoi ca sert d'avoir Qtés de lignes identiques ? y aura t il d'autres colonnes avec une info qui permettra de distinguer toutes les lignes ?
une fois que tu aura défini tout ca, les formulaires ne seront que des outils pour filtrer les infos..
Super , en effet j'ai défini tout ça à l'instant , non pas besoin de colonnes supplémentaire , chaque ligne corresponds à un colis de rentrée dans les frigos , donc si j'ai 5 ligne de cabillaud , j'ai donc 5 colis de cabillaud au frigo , il s'agit la de surtout garder un oeils sur les DLC et d'anticipé sa comsommation avant l'arrivé de cette DLC.
à voir la PJ: est ce que ca t'irait un truc dans le genre ?
la colonne TagId sert pour identifier facilement quelle ligne supprimer
elle n'est pas encore gérée lors de l'ajout d'élements;
à voir la PJ: est ce que ca t'irait un truc dans le genre ?
la colonne TagId sert pour identifier facilement quelle ligne supprimer
elle n'est pas encore gérée lors de l'ajout d'élements;
Super ces exactement ce que je voulait , il y aurai juste 2,3 modification à apporter si tu peut ? Dans lb_toSup il faudrai que cela soit classé par date la plus proche ou qu'elle soit de couleur a j-1 rouge et d'une autre a j-2 orange
par exemple je sais pas si ces faisable ?
D'autre par lors d'ajout d'un produit cabillaud par exemple , et que juste derriere j'en rajoute il remplace le premier au lieu de ce rajouter en dessous ? comment ce fait-il ?😛
Merci de ton aide
- 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