Problème Initialisation userform

  • Initiateur de la discussion Initiateur de la discussion Jem973
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

Jem973

XLDnaute Nouveau
Bonjour à tous,
J'ai créer un userform qui me permet de copier les données d'une base sur un autre classeur. Pour ce faire, j'ai écrit le code suivant :

1°/ J'ouvre le userform quand je clique sur la cellule désiré
Code:
Private Sub Worksheet_SelectionChange(ByVal Target As Range)


If Target.Column = 1 And Target.Count = 1 Then
UsfSelectionAC.Show

'j'ouvre le userform lorsque je clique ou sélectionne une cellule de la colonne A


End If
End Sub



A l'ouverture, le userform est initialisé de la façon suivante :

Code:
Private Sub UserForm_Initialize()
For i = 1 To 3
Me("Label" & i) = ActiveSheet.Cells(ActiveCell.Row, i)
Next

' je copie les données des 3 premières colonnes de la feuille excel dans les Labels présent dans le userform 

End Sub

2°/ je note dans un Textbox la quantité du produit que j'ai sélectionné dans la base et je valide.


La macro que j'utilise pour copier les données dans un autre classeur est la suivante :

Code:
Private Sub CommandValider_Click()

If TextQuantite.Value = "" Then
MsgBox ("Veuillez noter la Quantité nécéssaire !")
Exit Sub
End If


Workbooks(nom).Activate


num = Sheets("Contenu coffret alimentation").Range("A40").End(xlUp).Row + 1

Sheets("Contenu coffret alimentation").Select
Range("B" & num).Value = Label1.Caption
Range("C" & num).Value = Label2.Caption
Range("D" & num).Value = Label3.Caption
Range("E" & num).Value = Label4.Caption
Range("F" & num).Value = Label5.Caption
Range("G" & num).Value = TextQuantite.Value

Workbooks("Répertoire luminaires et alimentations.xls").Activate
Sheets("AC_DC").Select

Unload UsfSelectionAC
UsfSelectionAC.Hide

End Sub

Le souci que je rencontre est que lorsque ce macro à terminé son execution, le userform est réinitialisé , mais quand je veux sélectionner une nouvelle cellule pour copier les données dans l'autre classeur, le userform ne se réinitialise pas avec les nouvelles données de la cellule sélectionnée. Est-ce que c'est possible de réinitialiser un userform uniquement à l'ouverture de celui-ci ?

J'espère que j'ai été claire dans l'exposition de la problématique. Sinon n'hésitez pas à me demander plus d'infos.

Merci d'avance.
 
Re : Problème Initialisation userform

Bonjour Jem973 🙂,
A mon avis, tu as un problème avec
Code:
Unload UsfSelectionAC
UsfSelectionAC.Hide
Hide s'utilise pour conserver les données d'un USF en le masquant momentanément. Donc ton code signifie : décharger l'USF puis le rappeler en le cachant. Du fait, en le rappellant, il prends les mêmes données d'initialisation qu'à son ouverture, et quand ta macro le rappelle, il conserve ces données là 🙄...
En supprimant le Hide, tu devrais avoir le résultat que tu souhaites 😉...
Bon courage 😎
 
Re : Problème Initialisation userform

Merci beaucoup !!! Effectivement je n'ai plus de soucis.

Je pensait qu'il fallait le cacher parce que ça ne se fermait pas automatiquement ... Je me suis bien trompé 😛

Merci encore JPN soit bénis.
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

  • Question Question
Microsoft 365 worksheet_change
Réponses
29
Affichages
252
Réponses
3
Affichages
48
  • Question Question
XL 2021 VBA excel
Réponses
4
Affichages
80
Retour