Bonjour,
Je ne suis sure ni de l'endroit ou il faut poster cette question ni de l'efficacité de mon intitulé, je suis donc ouvert a toute remarque concernant ces deux questions.
Concernant mon problème.
Je débute en VBA et j'essaie de créer des formulaire pour faciliter des tâches administrative.
Pour cela j'ai créer un Userform dans lequel il y a des textbox et combobox dont je désire copier les valeurs dans des cellules d'un tableau.
Cependant je ne sais pas combien à l'avance de text ou combobox il y aura dans mon userform car j'ai ajouté un bouton sur le userform pour en ajouter dynamiquement.
Mon but est de construire un code le plus simple possible pour copier chaque valeur de chaque box de mon userform dans les bonnes colonnes de mon tableau.
sachant que le userform comporte une ligne de controls regroupant ces infos :
Produit quantité unité prix
combobox1 txtbox1 cbbox2 txtbox2
A chaque fois que je clique sur le bouton d'ajout de control une ligne semblable a celle ci se rajoute sur le userform.
Je sais comment copier les valeur de la premiere ligne mais aucun idée pour copier celle des autres lignes
Voici le code
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28 Private Sub CommandButton1_Click() 'éditer la fiche ' info date , vendeur et PDV Sheets("saisie masque").Range("B3").Value = UserForm1.ComboBox3.Value Sheets("saisie masque").Range("D3").Value = UserForm1.ComboBox4.Value Sheets("saisie masque").Range("F3").Value = UserForm1.TextBox3.Value Sheets("saisie masque").Range("F4").Value = UserForm1.TextBox4.Value 'copier la premiere ligne de produits Sheets("saisie masque").Range("B7").Value = UserForm1.ComboBox1.Value Sheets("saisie masque").Range("C7").Value = UserForm1.TextBox1.Value + UserForm1.ComboBox2.Value Sheets("saisie masque").Range("D7").Value = UserForm1.TextBox2.Value 'copier les autres lignes ... ! Dim i As Integer Dim x As Integer Dim y As Integer y = (2 * x) + 2 x = 1 + (UserForm1.Height - 338.25) / 30 If x > 1 Then For i = 5 To y Next i End If End Sub
Alors les lignes en rouges représentent le code pour copier les valeurs de la premiere lignes de control
et en vert mes pistes pour recopier les autres ligne
(seulement des pistes)
voila une impr ecran de mon userform ( le bouton + ajoute une ligne d'infos sur le produit)
![]()
Partager