macro enregistrement et+

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

B

benmx

Guest
Bonjour,

Lorsque j’ouvre mon classeur qui s’appelle par exemple « classeur1 », il y a un userform nommé userform1 qui s’ouvre automatiquement. Sur ce userform1 il y a des informations à écrire dans plusieurs textboxs dont un qui se nomme textbox1 où il faut écrire le nom du futur classeur soit « classeur2 ».

Ensuite après avoir appuyé sur « ok » les informations des textbox s’inscrive sur le classeur1 et le userform2 s’active. Sur ce userform2 il y a un bouton « enregistrement » et je voudrai que cela enregistre le classeur1 dans un nouveau classeur qui se nommera comme le textbox1 soit « classeur2 » et qu’il me demande le chemin où le mettre.

Une fois cela je voudrai que le « classeur1 » se ferme sans enregistrer et que le nouveau « classeur2 » s’active.

Et enfin par la suite, j’aimerai que lorsque j’ouvre le « classeur2 », que le userform1 ne s’active pas (je voudrai que la macro s’active que si le classeur se nomme « classeur1 » par exemple).


J’espère que je me suis bien expliqué.

Merci d’avance.
 
Bonjour,

Voici un début de réponse.

Quand tu vas enregistrer ton Classeur2, tu procèderas par un SaveAs ce qui fermera automatiquement ton classeur1 sans l'enregistrer

Pour pouvoir indiquer le chemin d'enregistrement tu peux utiliser la méthode

fName = Application.GetSaveAsFilename
ActiveWorkbook.SaveAs Filename:=fName

Quant à la désactivation du UserForm1, je n'ai pas de réponse pour l'instant

Bonne continuation

Jeannot
 
Salut,

Pour donner suite à Jeannot45, je pense que tu as un 'workbook_open' dans 'thisworkbook', donc je serais toi je ferais un test sur le nom du classeur actif de cette manière: (et ton userform ne s'affichera pas si le nom du classeur n'est pas 'classeur1)

Code:
Private Sub Workbook_Open()

If ActiveWorkbook.Name = 'classeur1.xls' Then
UserForm1.Show
End If

End Sub


A+
 
- 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

T
  • Résolu(e)
Microsoft 365 pb effacement macro
Réponses
8
Affichages
795
Themax
T
Réponses
2
Affichages
558
  • Question Question
Microsoft 365 Macro archivage
Réponses
9
Affichages
703
Réponses
5
Affichages
578
Retour