MACRO POUR SAUVEGARDER UN CLASSEUR
Résolu
clavervba
Messages postés
48
Statut
Membre
-
ThauTheme Messages postés 1564 Statut Membre -
ThauTheme Messages postés 1564 Statut Membre -
Bonjour,
j'ai essaye écrire une macro pour sauvegarder mon classeur, mais elle beug au niveau souligné, s'il vous plait, quelqu'un peux m'aider?
PS: suis pas un expert en macro
Sub enregistre()
origine = ThisWorkbook.Path
Dossier = InputBox("Nom du dossier", "Definir le repertoire de destination:")
If Dir(ThisWorkbook.Path & "\" & Dossier, vbDirectory) = "" Then MkDir ThisWorkbook.Path & "\" & Dossier
ActiveSheet.SaveAs Filename:=ThisWorkbook.Path & "\" & Dossier & "\" & Dossier & "\" & Dossier & "_" & ThisWorkbook.Name
Workbooks.Open origine & "\" & "Enreg.xlsm"
MsgBox "Fichier enregistré dans " & Dossier
ThisWorkbook.Close
End Sub
j'ai essaye écrire une macro pour sauvegarder mon classeur, mais elle beug au niveau souligné, s'il vous plait, quelqu'un peux m'aider?
PS: suis pas un expert en macro
Sub enregistre()
origine = ThisWorkbook.Path
Dossier = InputBox("Nom du dossier", "Definir le repertoire de destination:")
If Dir(ThisWorkbook.Path & "\" & Dossier, vbDirectory) = "" Then MkDir ThisWorkbook.Path & "\" & Dossier
ActiveSheet.SaveAs Filename:=ThisWorkbook.Path & "\" & Dossier & "\" & Dossier & "\" & Dossier & "_" & ThisWorkbook.Name
Workbooks.Open origine & "\" & "Enreg.xlsm"
MsgBox "Fichier enregistré dans " & Dossier
ThisWorkbook.Close
End Sub
A voir également:
- MACRO POUR SAUVEGARDER UN CLASSEUR
- Telecharger macro convertir chiffre en lettre excel - Télécharger - Tableur
- Sauvegarder favoris chrome - Guide
- Télécharger macro convertir chiffre en lettre excel - Télécharger - Tableur
- Jitbit macro recorder - Télécharger - Confidentialité
- Sauvegarder favoris firefox - Guide
4 réponses
Bonjour claver,
Tu peux éditer ton message et le mettre dans des bornes de code "basic" s'il te plait?
Merci !
Tu peux éditer ton message et le mettre dans des bornes de code "basic" s'il te plait?
Merci !
Bonjour,
Pour sauvegarder ta feuille active du classeur, je verrais plutôt ceci
Je ne vois pas l'utilité de l'open/close final ?
Toujours zen
La perfection est atteinte, non pas lorsqu'il n'y a plus rien à ajouter, mais lorsqu'il n'y a plus rien à retirer. Antoine de Saint-Exupéry
Pour sauvegarder ta feuille active du classeur, je verrais plutôt ceci
Sub enregistre() Dim origine As String, Dossier As String origine = ThisWorkbook.Path With Application.FileDialog(msoFileDialogFolderPicker) .AllowMultiSelect = False .InitialFileName = ThisWorkbook.Path .Title = "Choisissez votre répertoire" .Show If .SelectedItems.Count > 0 Then Dossier = .SelectedItems(1) Else Exit Sub End If End With ActiveSheet.SaveAs Dossier & "\" & ThisWorkbook.Name End Sub
Je ne vois pas l'utilité de l'open/close final ?
Toujours zen
La perfection est atteinte, non pas lorsqu'il n'y a plus rien à ajouter, mais lorsqu'il n'y a plus rien à retirer. Antoine de Saint-Exupéry
Bonjour le fil, bonjour le forum,
Moi ce qui me gêne bien plus que les balises ce sont les deux points suivants :
• Ne pas savoir quel est le code erreur quand ça plante. As-tu vérifié qu'il existe bel est bien un fichier nommé Enreg.xlsm dans le même dossier que le fichier qui contient la macro. Sinon le plantage est naturel...
• Même si ça n'a rien à voir avec le beug, n'y aurait-il pas un Dossier en trop dans a ligne :
j'aurais plutôt écrit :
Moi ce qui me gêne bien plus que les balises ce sont les deux points suivants :
• Ne pas savoir quel est le code erreur quand ça plante. As-tu vérifié qu'il existe bel est bien un fichier nommé Enreg.xlsm dans le même dossier que le fichier qui contient la macro. Sinon le plantage est naturel...
• Même si ça n'a rien à voir avec le beug, n'y aurait-il pas un Dossier en trop dans a ligne :
ActiveSheet.SaveAs Filename:=ThisWorkbook.Path & "\" & Dossier & "\" & Dossier & "\" & Dossier & "_" & ThisWorkbook.Name
j'aurais plutôt écrit :
ActiveSheet.SaveAs Filename:=ThisWorkbook.Path & "\" & Dossier & "\" & Dossier & "_" & ThisWorkbook.Name
bonjour ThauTheme,
merci pour la rectification du code,cool.
mais tu peux plus m'expliquer le point 1 stp
(Ne pas savoir quel est le code erreur quand ça plante. As-tu vérifié qu'il existe bel est bien un fichier nommé Enreg.xlsm dans le même dossier que le fichier qui contient la macro. Sinon le plantage est naturel... )
merci pour le temps accordé
merci pour la rectification du code,cool.
mais tu peux plus m'expliquer le point 1 stp
(Ne pas savoir quel est le code erreur quand ça plante. As-tu vérifié qu'il existe bel est bien un fichier nommé Enreg.xlsm dans le même dossier que le fichier qui contient la macro. Sinon le plantage est naturel... )
merci pour le temps accordé
Re,
C'est normal c'est un code que tu as carrément inventé. Le mot clé CreationRepertoire n'existe pas en VBA. On ne peut pas faire n'importe quoi tu sais, et sans savoir exactement ce que tu veux, je ne peux pas t'aider. Je ne comprends pas non plus pourquoi ce dernier code n'apparaît pas dans le premier que tu as fourni. C'est complètement incohérent... Je passe la main. Bonne chance.
C'est normal c'est un code que tu as carrément inventé. Le mot clé CreationRepertoire n'existe pas en VBA. On ne peut pas faire n'importe quoi tu sais, et sans savoir exactement ce que tu veux, je ne peux pas t'aider. Je ne comprends pas non plus pourquoi ce dernier code n'apparaît pas dans le premier que tu as fourni. C'est complètement incohérent... Je passe la main. Bonne chance.
Re,
Quand il y a un bug dans un code, il y a un message et le numéro de l'erreur qui s'affichent. Puis, la ligne qui pose problème est surlignée de jaune. Tu nous as montré la ligne qui plantait mais ni le message ni le numéro d'erreur. Ils permettent de mieux cerner l'erreur et de trouver plus facilement la solution.
Ensuite, si le fichier Enreg.xlsm n'existe pas, il est évident que ça va provoquer un bug quand tu demandes au code de l'ouvrir (le nom du fichier et le nom utilisé dans le code doivent être parfaitement identiques y compris l'extension)...
Quand il y a un bug dans un code, il y a un message et le numéro de l'erreur qui s'affichent. Puis, la ligne qui pose problème est surlignée de jaune. Tu nous as montré la ligne qui plantait mais ni le message ni le numéro d'erreur. Ils permettent de mieux cerner l'erreur et de trouver plus facilement la solution.
Ensuite, si le fichier Enreg.xlsm n'existe pas, il est évident que ça va provoquer un bug quand tu demandes au code de l'ouvrir (le nom du fichier et le nom utilisé dans le code doivent être parfaitement identiques y compris l'extension)...