5 façons d’enregistrer un classeur dans Excel

Pour enregistrer un classeur Excel à l’aide de VBA, vous devez utiliser la méthode SAVE pour écrire une macro. Et dans cette macro, vous devez spécifier le classeur que vous souhaitez enregistrer, puis utiliser la méthode SAVE. Lorsque vous exécutez ce code, il fonctionne comme le raccourci clavier (Ctrl + S).

spécifiez le classeur que vous souhaitez enregistrer
  1. Spécifiez le chapeau de classeur que vous souhaitez enregistrer.
  2. Tapez un point pour obtenir la liste de toutes les propriétés et méthodes.
  3. Sélectionnez la méthode « Enregistrer » parmi celles-ci ou tapez « Enregistrer »
  4. À la fin, exécutez le code pour enregistrer le classeur.

Dans ce didacticiel, nous examinerons différentes manières d’enregistrer un classeur. Assurez-vous donc d’ouvrir l’éditeur VBA à partir de l’onglet développeur pour utiliser le code que vous avez dans ce didacticiel.

Enregistrer le classeur actif

Si vous souhaitez enregistrer le classeur actif dans ce cas, vous pouvez utiliser un code comme le code suivant, au lieu de spécifier le classeur par son nom.

ActiveWorkbook.Save

Lorsque vous utilisez ActiveWorkbook comme classeur, VBA fait toujours référence au classeur qui est actif quel que soit le fichier dans lequel vous écrivez le code.

Enregistrez le classeur dans lequel vous écrivez du code

Si vous souhaitez enregistrer le fichier dans lequel vous écrivez le code, vous devez utiliser « ThisWorkbook » au lieu du nom du classeur.

ThisWorkbook.Save

Enregistrer tous les classeurs ouverts

Ici, nous pouvons utiliser une boucle pour parcourir tous les classeurs ouverts et les enregistrer un par un. Regardez le code ci-dessous.

Sub vba_save_workbook()
'variable to use as a workbook
Dim wb As Workbook
'For each to loop through each open workbook and save it
For Each wb In Workbooks
    wb.Save
Next wb
End Sub

Le code ci-dessus utilise la boucle FOR EACH dans chaque classeur, il utilise la méthode SAVE pour chaque fichier un par un.

Remarque : Si vous essayez d’enregistrer un classeur avec la méthode SAVE qui n’est pas déjà enregistré, Excel affiche une boîte de dialogue pour demander votre autorisation d’enregistrer ce fichier, puis vous devez choisir si vous souhaitez enregistrer ce fichier sur l’emplacement par défaut dans le format par défaut.

Maintenant, voici le point : comme vous utilisez une macro pour enregistrer le classeur, ce fichier doit être enregistré dans le format compatible avec les macros et la meilleure façon de gérer cette situation est d’utiliser la méthode SAVE AS (nous verrons dans le section suivante de ce tutoriel).

Enregistrer en tant que fichier Excel

Pour ENREGISTRER un fichier qui n’est pas encore enregistré, en utilisant VBA, vous devez utiliser la méthode ENREGISTRER SOUS. Dans cette méthode, vous pouvez définir le nom du fichier et le chemin où vous souhaitez enregistrer le fichier, et à part cela, il y a dix autres arguments que vous pouvez définir.

expression.SaveAs (FileName, FileFormat, Password, WriteResPassword, ReadOnlyRecommended, CreateBackup, AccessMode, ConflictResolution, AddToMru, TextCodepage, TextVisualLayout, Local)

Dans le code suivant, vous n’avez aucun argument avec la méthode « SAVE AS ».

enregistrer en tant que fichier excel

Lorsque vous exécutez ce code, il vous demande quelques éléments, tels que le format que vous souhaitez utiliser pour enregistrer le fichier, ou souhaitez-vous remplacer le fichier existant déjà enregistré avec le même nom. Il est donc préférable de définir l’utilisation de certains des arguments.

Enregistrer en tant que fichier à l’emplacement actuel

Par défaut, VBA utilise l’emplacement actuel pour enregistrer le fichier. Lorsque vous écrivez du code avec la méthode SAVE AS et que vous spécifiez simplement le nom, ce fichier va directement dans le dossier actuel. Vous pouvez voir dans le code suivant où vous avez le qui enregistre le classeur actif.

enregistrer en tant que fichier à l'emplacement actuel
Sub save_as_file()
    ActiveWorkbook.SaveAs Filename:="myNewWorkbook"
End Sub

Enregistrer en tant que fichier à un emplacement spécifique

L’argument du nom de fichier vous permet également d’utiliser le chemin d’accès au cas où vous voudriez utiliser un emplacement différent pour enregistrer le fichier.

enregistrer en tant que fichier à un emplacement spécifique
Sub save_as_file()
    ActiveWorkbook.SaveAs _
        Filename:="C:UsersDellDesktopmyNewBook"
End Sub

Dans le code ci-dessus, vous avez le chemin dans l’argument FileName et VBA utilise ce chemin vers le fichier.

Remarque : Vous pouvez également utiliser cette méthode pour vérifier si un classeur existe dans un dossier ou non avant d’utiliser la méthode SAVE AS pour l’enregistrer à un emplacement particulier et vous pouvez en savoir plus sur la méthode SAVE AS à partir d’ici.

Ajouter un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *