Copier le nom de mes buttons

Résolu/Fermé
VDB.57 - 18 juin 2016 à 10:55
 VDB.57 - 20 juin 2016 à 21:49
Bonjour,

Je reviens vers vous un peu honteux de vous solliciter encore. Mais sans votre aide je suis incapable de faire cette programmation VBA.

Actuellement j’ai 1 onglet « caisse » et un userform de 36 buttons.
Le nom de chaque button correspond à un produit.

Lorsque je clic sur un Button de mon userform2 il doit copier une seule fois son nom « produit » en AE5 de l’onglet « caisse » avec un maximum de 10 produits différents à la suite. Mon petit tableau sera AD5 :AE15.
AD5 étant la quantité.

Si je clic plusieurs fois sur le même produit (même Button) seule la cellule AD5 enregistre le nombre de clic qui correspondra à la quantité de ce produit.

Je vous adresse par avance mes plus sincères remerciements

6 réponses

gbinforme Messages postés 14946 Date d'inscription lundi 18 octobre 2004 Statut Contributeur Dernière intervention 24 juin 2020 4 684
18 juin 2016 à 18:32
Bonjour,

Tout cela est bien curieux :
- pourquoi 36 boutons avec seulement 10 cliquables ?
- enregistrer le nombre produits au clic c'est assez aléatoire.
Pour que cela fonctionne simplement il te faut mettre un module de classe mais sans connaitre ton userform c'est pas simple à mettre du code adapté à ton niveau de compréhension.
0
Bonjour gbinforme,

Merci de prendre en considération ma demande.
Pourquoi seulement 10 cliquables pour 36 buttons, je voulais limiter(par erreur) mon tableau AD:AE à 10 lignes.Ta remarque est pertinente "qui peut le plus, peut le moins".
La seule obligation que j'ai, c'est au premier clic de copier qu'une seule fois le produit correspondant au nom du button en colonne AE et en AD le chiffre 1.
Au deuxième clic sur ce même button le chiffre 1 passe à 2 et ainsi de suite. Dans ma liste il n'y aura jamais 2 fois le même produit.

Ci dessous mon userform de Buttons réalisé par Thautherm que je remercie.
"Rendons à César ce qui lui appartient"

Range("A1").Select

UserForm2.CommandButton20.Caption = "VALIDER" & Chr(10) & "SELECTION"

Dim BT As Byte
Dim LI As Byte
Dim COL As Byte

For BT = 1 To 36
Select Case BT
Case 1 To 24
LI = BT + 1: COL = 9
Case 25 To 30
LI = BT - 23: COL = 11
Case 31 To 36
LI = BT - 29: COL = 13

End Select
Me.Controls("CommandButton" & BT).Caption = Sheets("caisse").Cells(LI, COL).Value
Next BT
End Sub
0
gbinforme Messages postés 14946 Date d'inscription lundi 18 octobre 2004 Statut Contributeur Dernière intervention 24 juin 2020 4 684
19 juin 2016 à 21:57
Bonsoir,

Un bout de code, sans plus de précision ne permet pas de corriger quoi que ce soit car ce n'est pas là que se situe ta demande.
Si tu pouvais nous mettre un exemple de structure des données, sans éléments personnels, avec les résultats souhaités expliqués clairement, ce serait plus facile de t'aider.
Pour communiquer ton classeur tu le télécharges sur https://www.cjoint.com/ (mode d'emploi) et tu mets ici le lien obtenu.
0
Bonjour et merci pour ton implication gbinform

Comme demandé

http://www.cjoint.com/c/FFulAKReom2
0
gbinforme Messages postés 14946 Date d'inscription lundi 18 octobre 2004 Statut Contributeur Dernière intervention 24 juin 2020 4 684
20 juin 2016 à 16:50
Bonjour,

Voici ton classeur avec la gestion de tes boutons selon ta demande :

https://www.cjoint.com/c/FFuoWHosaHl

Je t'ai modifié un peu le lancement et rajouté un module de classe qui permet de traiter tous les boutons simplement.
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Bonjour gbinform,

Il m'est impossible d'ouvrir le fichier.

Que je clic sur document joint, ou sur le bouton rouge accéder au fichier, j'ai une page pleine de losanges avec ? et de carrés qui s'ouvre.
0
Bonsoir gbinform,

Je viens de réussir à ouvrir le fichier, j'ai copier la feuille illisible avec les hiéroglyphes dans excel.

Je ne sais comment te remercier, ton aide et ton efficacité m'ont été précieuses.

Encore mille fois merci.
0