Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

User forme entrant des données

R

Richard

Guest
Bonjour

Ect ce qu'il est possible de créer un userform qui per met de saisi un nom d article avec une quantité qui permet d'éclater autant de fois sur les lignes que la quatite renseigné.

Ex : Libellé : stylos
Quantité : 15

Résultat :
Ligne y1 = Stylos 1
Ligne y2 = Stylos 1
.......
Ligne y15 = Stylos 1

Merci pour vos lumiere
 
B

bipbipcoyote

Guest
tu crées un userform avec 2 textbox's et un bouton de commande dans le code du bouton de commande tu inscris ces lignes, bien sûr à toi de mettre les valeurs dans les textbox dans la boucle for next

Private Sub CommandButton1_Click()
Dim x As Integer

x = TextBox1.Value 'variable pour faire autant de tours voulus
For c = 1 To x ' début de boucle
ActiveCell.Value = TextBox2 'on écrit le contenu de la textbox dans la cellule
ActiveCell.Offset(1, 0).Select 'on saute une ligne
Next
End Sub
 
T

Thierry

Guest
Salut Richard, Bipbipcoyote et tous les ami(e)s

La solution de BipBip est simple et correcte, moi j'ai préparé une démo complète qui utilise exactement le même principe de boucle (for next), mais j'y ai rajouté des exemples de contrôles nécessaires pour éviter de saisir des erreurs...

C'est assez interressant car j'applique ici un contrôle avec "on error goto" qui me sert à vérifier en fait la variable quantité ("X" pour bipbip..) facilement ré-utilisable pour des userforms de saisie numérique d'entier... à découvrir pour ceux qui ont été confronté à ce problème...

Voilà, vu qu'il n'y avait rien à la TV (com d'hab!!)
Bonne nuit
@+Thierry
 

Pièces jointes

  • TextBoxReportQuantite.zip
    16.3 KB · Affichages: 31
R

Richard

Guest
Thierry c est super ton truc mais j ai une petite modif a faire,

Il faut que quand je rentre mon article et ma quantité
Code Libellé Qté
exemple : 92000 stylos 15

Résultat
Ligne x1 92000 stylos 1
Ligne x2 92000 stylos 2
Ligne x3 92000 stylos 3
.....
Ligne x15 92000 stylos 15

Merci pour ton aide
 
T

Thierry

Guest
Salut Richard;

tu veux de L'aide... Ben il n'y a qu'à ajouter un textbox non ? et insérer ce qu'il faut dans le code......

Un TextBox3 dans le UserForm

et dans le code :
Dim Reference as String (si il peut y avoir du text)
Reference = TextBox3.value

bon évidemment pour le reste c'est plus compliqué à expliquer qu'à faire directement... Donc voici ci-joint une version adaptée.... Mais bon Richard essaie de comprendre ce que j'ai changé..... Après tu pourras ajouter tout ce que tu veux par toi même...

BOnne Nuit
@+Thierry
 

Pièces jointes

  • TextBoxReportQuantite2.zip
    17.3 KB · Affichages: 25
R

Richard

Guest
Thierry j ai compris ce que tu as changé ce qui n était pas très complexe mais mon soucis principal est au niveau des quantité, car je veux un cumul ex si qtité 15 je vaux que ligne 1 = 1 , ligne 2 = 2 .... ligne 15 = 15

mais pour le reste je n'ai pas de soucis car j ai pas mal de textbox a rajouté mais mon pb c est le cumul

merci pour ton aide
richard
 
R

Richard

Guest
Thierry

j ai analyser tes corrections ce que j ai compris au niveau de textbox mais mon soucis est au niveau de la quantité je voudrai qu 'il effectue un cumul

ex: qtité 15

ligne 1 = 1
ligne 2 = 2
ligne 3 = 3
...
ligne 15 = 15

et puis ca recommence si on entre une autre donnée ou article regarde mes exemples précédent je crois que c est un peu mieux expliqué

j ete remercie pour tes démos car cela m 'aide pour mieux comprendre vba pour dautres aplli

merci
 
T

Thierry

Guest
Salut Richard,

Bonjour le Forum....

Sorry suis très très OQP ces jours ci... (Suis Délégué du Personel)...

Bon vite fait, vu que Richard "Crie" au secour !! (Les MAJ sont considérées comme des Cris sur les Forums et Chats... MISTER RICHARD !!!)

Bon ben pour ce problème, oui j'ai enfin capté ce que tu voulais (en fait je me demandais pourquoi tu voulais reporter des "1" lors de ton premier post...)

Ben il suffit de rajouter une variable "compteur" de type integer (à moins que tu aies plus de 32767 en quantité...) et de dire qu'à chaque boucle on incrémente par "compteur = compteur + 1"...
Il faut aussi dire avant la boucle que "compteur = 1" car sinon la première valeur pour VBA serait 0...

Ci-joint l'exemple en version 3, comprenant cette nouvelle variable.

Donc c'était pas la peine de crier... et le post du 13/11/2002 12:44 n'a strictement aucune utilité, si ce n'est que j'ai même hésité à publier une solution...

Bon après midi,
@+Thierry
 

Pièces jointes

  • TextBoxReportQuantite3.zip
    18.8 KB · Affichages: 36

Discussions similaires

Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…