Comment : enregistrer des classeurs par programmation
Il existe plusieurs façons d'enregistrer un classeur.Vous pouvez le faire sans modifier le chemin d'accès.Si le classeur n'a jamais été enregistré auparavant, il est souhaitable de spécifier un chemin d'accès lorsque vous l'enregistrez.Sans chemin d'accès explicite, Microsoft Office Excel enregistre le fichier dans le dossier actif avec le nom qui lui a été donné lors de sa création.Vous pouvez également enregistrer une copie du classeur sans modifier le classeur ouvert en mémoire.
S'applique à : Les informations contenues dans cette rubrique s'appliquent aux projets de niveau document et de niveau application pour Excel 2013 et Excel 2010. Pour en savoir plus, consultez Fonctionnalités disponibles par type d'application et de projet Office.
Enregistrement d'un classeur sans modification du chemin d'accès
Pour enregistrer un classeur associé à une personnalisation au niveau du document
Appelez la méthode Save de la classe ThisWorkbook.
Me.Save()
this.Save();
Pour enregistrer le classeur actif dans un complément d'application
Appelez la méthode Save pour enregistrer le classeur actif.Pour utiliser l'exemple de code suivant, exécutez-le dans la classe ThisAddIn dans un projet au niveau de l'application pour Excel.
Me.Application.ActiveWorkbook.Save()
this.Application.ActiveWorkbook.Save();
Enregistrement d'un classeur avec un nouveau chemin d'accès
Vous pouvez enregistrer le classeur spécifié à un nouvel emplacement ou sous un nouveau nom, en indiquant éventuellement un format de fichier, un mot de passe, un mode d'accès, etc.
[!REMARQUE]
Il peut s'avérer souhaitable d'affecter la valeur False à la propriété DisplayAlerts avant d'enregistrer le classeur avec un nouveau chemin d'accès car l'enregistrement sous certains formats peut nécessiter une interaction.L'affectation de la valeur False à cette propriété conduit Excel à utiliser toutes les valeurs par défaut.
Pour enregistrer un classeur associé à une personnalisation au niveau du document
Appelez la méthode SaveAs de la classe ThisWorkbook.Pour utiliser l'exemple de code suivant, exécutez-le dans la classe ThisWorkbook.
Me.SaveAs("C:\Book1.xml")
this.SaveAs(@"C:\Book1.xml", missing, missing, missing, missing, missing, Excel.XlSaveAsAccessMode.xlNoChange, missing, missing, missing, missing, missing);
Pour enregistrer le classeur actif dans un complément d'application
Appelez la méthode SaveAs pour enregistrer le classeur actif sur un nouveau chemin d'accès.Pour utiliser l'exemple de code suivant, exécutez-le dans la classe ThisAddIn dans un projet au niveau de l'application pour Excel.
Me.Application.ActiveWorkbook.SaveAs("C:\Test\Book1.xml")
this.Application.ActiveWorkbook.SaveAs(@"C:\Test\Book1.xml", Excel.XlSaveAsAccessMode.xlNoChange);
Enregistrement d'une copie du classeur
Vous pouvez enregistrer une copie du classeur dans un fichier sans modifier le classeur ouvert en mémoire.Cette méthode est utile lorsque vous souhaitez créer une copie de sauvegarde sans modifier l'emplacement du classeur.
Pour enregistrer un classeur associé à une personnalisation au niveau du document
Appelez la méthode SaveCopyAs de la classe ThisWorkbook.Pour utiliser l'exemple de code suivant, exécutez-le dans la classe ThisWorkbook.
Me.SaveCopyAs("C:\Book1.xlsx")
this.SaveCopyAs(@"C:\Book1.xlsx");
Pour enregistrer le classeur actif dans un complément d'application
Appelez la méthode SaveCopyAs pour enregistrer une copie du classeur actif.Pour utiliser l'exemple de code suivant, exécutez-le dans la classe ThisAddIn dans un projet au niveau de l'application pour Excel.
Me.Application.ActiveWorkbook.SaveCopyAs("C\Book1.xlsx")
this.Application.ActiveWorkbook.SaveCopyAs(@"C\Book1.xlsx");
Programmation fiable
L'annulation interactive de l'une des méthodes enregistrant ou copiant le classeur génère une erreur d'exécution dans votre code.Par exemple, si votre procédure appelle la méthode SaveAs mais ne désactive pas les invites d'Excel, et que l'utilisateur clique sur Annuler à l'invite, Excel génère une erreur d'exécution.
Voir aussi
Tâches
Comment : fermer des classeurs par programmation
Concepts
Limitations de programmation des éléments hôtes et des contrôles hôtes