Bonjour a tous le forum,
J'ai un fichier excel dans lequel il y a un tableau avec des friandise et des boissons et des prix pour les client (1€50) et pour le personnel (0€50).
Je voudrai créer un userform qui me dirai:
Boissons: (une liste déroulante ou je selectionnerai la boissons)
Quantité: (une texte box ou je mettrai la quantité prix par le client ou le personnel)
Client ou Personnel : un bouton d'option pour selectionner personnel ou client.
Enfin aprés avoir tout selectionner, le programme additionnerai mon choix dans le tableau
Par exemple un client prend un coca, aprés avoir selectionner coca quantité et client le programme marquerai dans la cellule correspondante de on tableau
Je vous ai mis mon tableau en piece jointe
Ce n'est peut etre pas trés clair mais si vous avez des questions demander
Merci a tous [file name=userform_20051214142435.zip size=7988]http://www.excel-downloads.com/components/com_simpleboard/uploaded/files/userform_20051214142435.zip[/file]
Bonjour tomtom,
j'ai potasser ton problème, tu trouveras en pièce jointe ce que j'en ai sorti, en espérant que ça te convienne,
@ +
Toutou [file name=Classeur3_20051214152108.zip size=13706]http://www.excel-downloads.com/components/com_simpleboard/uploaded/files/Classeur3_20051214152108.zip[/file]
Quelles cellules?
si tu parles de celles dont le contenu est renvoyé dans les 2 listes du userform c'est quelquechose comme:
.Rowsource='b3:b10'
et Rowsource 'F3:F8'
Si je me souviens bien.
Bon courage,@+
Toutou
Salut,
Ces cellules c'est bon j'ai changé mais c les cellule qui doivent recevoir la quantité.
D'autre part il semblerai qu'il y é un problème avec la commande pour les employeurs au niveau des boisson et avec la commande pour les clients au niveau des friandise.
Re
A quelle claque!!! inch: Ca fait mal
Merci pour cette correction Professeur Thierry.
Pour répondre à ta question Tomtom,
les cellules sont déterminées par des coordonnées elle-même utilisées comme variables:
li et la sont des variables qui prennent en compte le numéro de l'élément choisi dans une liste pour retourner l'info dans la bonn colonne, dans l'expression (li,3), le 3 détermine le numéro de la colonne.
Voilà, j'espère que tu as compris, en dépit de mes piètres explications;
@ +
Toutou
Je ne suis pas sûr d'avoir tout compris dans ta demande...
Que veux-tu dire ?
Je comprends par exemple :
'Les cellules où les quantités doivent apparaitre'
Si on choisit Coca quantité 2 en option 'Tarif Client' c'est la cellule 'C3' qui va se remplir... avec un Deux
Ensuite si on ré-ouvre le UserForm et qu'on choisit à nouveau Coca quantité Cing en option 'Tarif Client' la cellule 'C3' va s'incrémenter de 2 + 5 soit Sept indiqué dans cette cellule...
Tout se passe dans cette partie de code :
Code:
With Worksheets('Feuil1')
li = ListBox1.ListIndex + 3
la = ListBox2.ListIndex + 3
If OptionButton1 = True Then
w = .Cells(li, 3).Value
y = .Cells(li, 7).Value
.Cells(li, 3) = TextBox1.Value + w
.Cells(la, 7) = TextBox2.Value + y
Else
x = .Cells(la, 4).Value
z = .Cells(la, 8).Value
.Cells(li, 4) = TextBox1.Value + x
.Cells(la, 8) = TextBox2.Value + z
End If
End With
En détaillant un peu pour mon exemple 'Coca' les Boisson sont en ListBox1... Donc cette ligne là va être utile :
li = ListBox1.ListIndex + 3
Li va prendre le numéro de la ligne où se trouve 'Coca' qui est en position 1 de la ListBox (Soit Zéro en informatique) plus un décalage de deux lignes dans le tableau sur la feuille (les données commence en ligne 3)...
Donc ça donne
Premier Item = 0 soit plus 1 pour correspondre
Deux Lignes Perdues = 2
C'est pour ça ce + 3
La suite si on a choisit Client c'est donc l'OptionButton1 qui est true et donc c'est cette condition qui est remplie
If OptionButton1 = True Then
On doit ensuite récupérer la valeur de la ligne Coca comme suit
w = .Cells(li, 3).Value
Donc w va recevoir la valeur 2 dans mon exemple
Puis on va additionner la nouvelle valeur en TextBox1 + W en l'envoyant en cellule C3 (Pour mon exemple 7)
.Cells(li, 3) = TextBox1.Value + w
En espérant t'avoir éclairé un peu
Bonne soirée [ol]@+Thierry[/ol]
PS tu dois d'ailleurs appliquer une correction comme dans le code ci-dessus car j'ai laisser passé un,e erreur dans le fichier joint...
En fait mon tableau ce trouve dans la plage B31 à d41 pour les boissons et et dans la plage f31 à g41 pour les friandises donc je voulais savoir ce que je devais changer pour mettre tous ca dans mon tableau.