Comment ajouter de nouvelles feuilles dans Excel à l’aide de VBA



Vous pouvez utiliser les méthodes suivantes dans VBA pour ajouter de nouvelles feuilles à un classeur Excel :

Méthode 1 : ajouter une nouvelle feuille

Sub AddSheetToWorkbook()
Sheets.Add
End Sub

Cette macro ajoutera une nouvelle feuille au classeur avec un nom généré automatiquement qui décrit le numéro de feuille qu’elle représente dans le classeur.

Par exemple, s’il y a trois feuilles dans le classeur et que vous exécutez cette macro, une nouvelle feuille portant le nom Sheet4 sera créée.

Remarque : Par défaut, VBA ajoutera la nouvelle feuille immédiatement avant la feuille actuellement active.

Méthode 2 : ajouter plusieurs nouvelles feuilles

Sub AddSheetToWorkbook()
Sheets.Add Count:=3
End Sub

Cette macro ajoutera trois nouvelles feuilles au classeur.

Méthode 3 : ajouter une nouvelle feuille avec un nom

Sub AddSheetToWorkbook()
Sheets.Add.Name = "MyNewSheet"
End Sub

Cette macro ajoutera une nouvelle feuille au classeur avec le nom MyNewSheet .

Méthode 4 : ajouter une nouvelle feuille avec un nom avant une feuille spécifique

Sub AddSheetToWorkbook()
Sheets.Add(Before:=Sheets("Teams")).Name = "MyNewSheet"
End Sub

Cette macro ajoutera une nouvelle feuille au classeur avec le nom MyNewSheet juste avant la feuille existante appelée Teams .

Méthode 5 : ajouter une nouvelle feuille avec un nom après une feuille spécifique

Sub AddSheetToWorkbook()
Sheets.Add(After:=Sheets("Teams")).Name = "MyNewSheet"
End Sub

Cette macro ajoutera une nouvelle feuille au classeur avec le nom MyNewSheet directement après la feuille existante appelée Teams .

Méthode 6 : ajouter une nouvelle feuille avec un nom à la fin du classeur

Sub AddSheetToWorkbook()
Sheets.Add(After:=Sheets(Sheets.Count)).Name = "MyNewSheet"
End Sub

Cette macro ajoutera une nouvelle feuille au classeur avec le nom MyNewSheet à la toute fin du classeur.

Méthode 7 : ajouter une nouvelle feuille avec un nom au début du classeur

Sub AddSheetToWorkbook()
Sheets.Add(Before:=Sheets(1)).Name = "MyNewSheet"
End Sub

Cette macro ajoutera une nouvelle feuille au classeur avec le nom MyNewSheet au tout début du classeur.

Les exemples suivants montrent comment utiliser chaque méthode en pratique avec le classeur Excel suivant comportant trois feuilles existantes :

Exemple 1 : Ajouter une nouvelle feuille

Nous pouvons créer la macro suivante pour ajouter une nouvelle feuille au classeur avec un nom généré automatiquement :

Sub AddSheetToWorkbook()
Sheets.Add
End Sub

Lorsque nous exécutons cette macro, une nouvelle feuille est ajoutée au classeur avec le nom Sheet4 juste avant la feuille Teams , que nous avions sélectionnée lors de l’exécution de la macro :

Exemple 2 : ajouter plusieurs nouvelles feuilles

Nous pouvons créer la macro suivante pour ajouter trois nouvelles feuilles au classeur avec des noms générés automatiquement :

Sub AddSheetToWorkbook()
Sheets.Add Count:=3
End Sub

Lorsque nous exécutons cette macro, trois nouvelles feuilles sont ajoutées au classeur directement avant la feuille Teams , que nous avions sélectionnée lors de l’exécution de la macro :

Exemple 3 : Ajouter une nouvelle feuille avec un nom

Nous pouvons créer la macro suivante pour ajouter une nouvelle feuille au classeur avec un nom spécifique :

Sub AddSheetToWorkbook()
Sheets.Add.Name = "MyNewSheet"
End Sub

Lorsque nous exécutons cette macro, une nouvelle feuille nommée MyNewSheet est ajoutée au classeur juste avant la feuille Teams , que nous avions sélectionnée lors de l’exécution de la macro :

Exemple 4 : Ajouter une nouvelle feuille avec un nom avant une feuille spécifique

Nous pouvons créer la macro suivante pour ajouter une nouvelle feuille au classeur directement avant une feuille existante spécifique :

Sub AddSheetToWorkbook()
Sheets.Add(Before:=Sheets("Teams")).Name = "MyNewSheet" 
End Sub

Lorsque nous exécutons cette macro, une nouvelle feuille nommée MyNewSheet est ajoutée au classeur directement avant la feuille Teams :

Exemple 5 : Ajouter une nouvelle feuille avec un nom après une feuille spécifique

Nous pouvons créer la macro suivante pour ajouter une nouvelle feuille au classeur directement après une feuille existante spécifique :

Sub AddSheetToWorkbook()
Sheets.Add(After:=Sheets("Teams")).Name = "MyNewSheet" 
End Sub

Lorsque nous exécutons cette macro, une nouvelle feuille nommée MyNewSheet est ajoutée au classeur directement après la feuille Teams :

Exemple 6 : Ajouter une nouvelle feuille avec un nom à la fin du classeur

Nous pouvons créer la macro suivante pour ajouter une nouvelle feuille à la toute fin du classeur :

Sub AddSheetToWorkbook()
Sheets.Add(After:=Sheets(Sheets.Count)).Name = "MyNewSheet"
End Sub

Lorsque nous exécutons cette macro, une nouvelle feuille nommée MyNewSheet est ajoutée à la toute fin du classeur :

Exemple 7 : Ajouter une nouvelle feuille avec un nom au début du classeur

Nous pouvons créer la macro suivante pour ajouter une nouvelle feuille au tout début du classeur :

Sub AddSheetToWorkbook()
Sheets.Add(Before:=Sheets(1)).Name = "MyNewSheet"
End Sub

Lorsque nous exécutons cette macro, une nouvelle feuille nommée MyNewSheet est ajoutée au tout début du classeur :

Remarque : Vous pouvez trouver la documentation complète de la méthode Sheets.Add ici .

Ressources additionnelles

Les didacticiels suivants expliquent comment effectuer d’autres tâches courantes dans VBA :

VBA : Comment trouver la dernière ligne utilisée
VBA : Comment trouver la dernière colonne utilisée
VBA : Comment compter le nombre de feuilles dans un classeur

Ajouter un commentaire

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