Quand j’appel : Userform2.show j’aimerais retrouver les valeur des Cells(i, 1). Cells(i, 2) d’une boucle for
VB:
Sub reve()’Module 1
Dim fin As Long
Dim gest As Object, Sala As Object
Set Sala = Sheets("Emplacement")
Set gest = Sheets("EntréeSortie")
fin = Range("K65000").End(xlUp).Row
For i = 2 To fin
If Cells(i, 13) > 0 Then
Cells(i, 13).Select
UserForm2.Show
End If
Next
End Sub
J’ai mi ce code dans l’userform
Code:
Private Sub UserForm_Initialize()
Article.Value = gest.Cells(i, 1).Value & " " & "Bouteilles" & Chr(10) & gest.Cells(i, 2).Value & " " & gest.Cells(i, 3).Value & Chr(10) & gest.Cells(i, 4).Value
End Sub
Mais ça bug ?
Que dois-je rajouter ou changer à ma procédure
Un grand merci pour votre aide, et
Cordialement à vous
Bonjour.
C'est sûr, des variables locales dans une procédure ne sont pas connues dans un UserForm dont elle fait un .Show !
Moi ma préférence pour communiquer des informations à un UserForm c'est de les lui passer dans une méthode écrite dedans pour ça.
Mais on peut aussi les déclarer globales et Public dans un module standard pour qu'elles soient connue dans l'UserForm.
S'agissant d'objets Worksheet, déclarez les y donc comme tels au lieu de Object.
Remarque: si ce sont toujours les même feuilles, utilisez donc simplement les objets Worksheet de la rubrique Microsoft Excel Objets qui les représentent: ils sont connus partout dans le projet VBA du classeur qui les contient.
Vous pouvez aussi faire UserForm2.Article.Value = gest.Cells(i, 1).Value & " " & "Bouteilles" & Chr(10) & gest.Cells(i, 2).Value & " " & gest.Cells(i, 3).Value & Chr(10) & gest.Cells(i, 4).Value juste avant le UserForm2.Show