Réinitialiser une userform

  • Initiateur de la discussion Initiateur de la discussion Amaury11100
  • 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 !

A

Amaury11100

Guest
Bonjour à tous,
Je voudrais savoir quel code il faut mettre pour réinitialiser une userform ? Je m'explique : j'ai créé une userform pour entrer des données dans une feuille excel et ca marche très bien seulement quand je ferme la userform et que je la réouvre les données ont disparu dans la userform alors qu'elles sont toujours dans la feuille excel.
D'avance merci de votre aide.
Amaury
 
Re : Réinitialiser une userform

Bonsoir Amaury

Si j'ai bien compris, je suppose que tu fermes l'USF avec l'instruction "Unload", essaye avec la méthode "hide", dans ce cas l'usf n'est pas déchargé de la mémoire.

Code:
UserForm1.Hide

bonne soirée
@+
 
Re : Réinitialiser une userform

bonjour, je ne sais pas si j'ai bien compris ta demande???
rajoute ce code pour ton userform

Private Sub UserForm_Initialize()
With Worksheets("Feuil1")
TextBox1 = .Range("A2")
end sub

à ajuster avec ton propre userform, ici à l'ouverture de l'usf le textbox1 prend donc la valeur de la cellule A2 de la feuille 1

en espérant t'avoir aidé

à+
edit, Pierrot93 bonsoir, j'ai hésité un moment pour ton explication , il aura le choix ainsi
 
Dernière édition:
Re : Réinitialiser une userform

J'ai un soucis, quand je veux ouvrir la userform, cela me met un message d'erreur qui est : "objet requis"
Par contre quand je désactive le code si dessous que j'ai mis pour récupérer les données des cellules dans la usf, la usf s'ouvre bien mais ne s'initialise plus ce qui est logique.

Code utiliser dans la usf pour récupérer les donnée des cellules:

Private Sub UserForm_Initialize()

With Feuil1
B4.Value = .Range("B4").Value
G4.Value = .Range("G4").Value
B7.Value = .Range("B7").Value
B9.Value = .Range("B9").Value
B10.Value = .Range("B10").Value
B11.Value = .Range("B11").Value
B12.Value = .Range("B12").Value
G7.Value = .Range("G7").Value
C14.Value = .Range("C14").Value
G14.Value = .Range("G14").Value
C17.Value = .Range("C17").Value
C19.Value = .Range("C19").Value
C21.Value = .Range("C21").Value
C23.Value = .Range("C23").Value
C25.Value = .Range("C25").Value
G17.Value = .Range("G17").Value
G19.Value = .Range("G19").Value
G21.Value = .Range("G21").Value
G23.Value = .Range("G23").Value


If Feuil1.[G25] = "OUI" Then G25OUI = True

End With

End Sub
 
Re : Réinitialiser une userform

Bonjour à tous,
Depuis hier je galère pour essayer de voir d'ou vient le problème.
Dans un message plus haut, j'explique que cela fonctionne dès que j'enlève le code de "userform initialize" mais moi il me la faut absolument cette macro pour avoir les données remplies à la fois dans la feuille excel et sur mon formulaire.
Pour faire plus simple j'ai joint le fichier pour que vous voyez le problème par vous même.
Soyer sympa si vous trouver de me donner une explication pour ne plus retomber dans le meme panneau.
D'avance merci.
Amaury
 

Pièces jointes

Re : Réinitialiser une userform

Bonjour Amaury

Personnellement j'évite de donner comme nom aux objets (textbox) des references de cellules valides(B4). C'est peut être pas ca qui est la cause de ton problème mais je suis pas sur que vba digère bien ceci.

bon après midi
@+
 
- 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
Assurez vous de marquer un message comme solution pour une meilleure transparence.

Discussions similaires

Réponses
6
Affichages
250
Réponses
41
Affichages
1 K
Retour