Comment obtenir le nom du classeur à l’aide de VBA (avec exemples)
Vous pouvez utiliser les méthodes suivantes dans VBA pour obtenir le nom d’un classeur Excel :
Méthode 1 : obtenir le nom du classeur actif
Function GetWorkbookName() As String GetWorkbookName = ActiveWorkbook.Name End Function
Cette fonction renverra le nom du classeur actif tel que my_vba_workbook.xlsm .
Méthode 2 : obtenir le nom du classeur actif sans extension
Function GetWorkbookName() As String GetWorkbookName = Left(ActiveWorkbook.Name, InStr(ActiveWorkbook.Name, ".") - 1) End Function
Cette fonction renverra le nom du classeur actif sans l’extension telle que my_vba_workbook .
Les exemples suivants montrent comment utiliser chaque méthode en pratique avec un classeur Excel actuellement actif appelé my_vba_workbook.xlsm .
Exemple 1 : obtenir le nom du classeur actif
Nous pouvons créer la fonction suivante pour obtenir le nom du classeur actif :
Function GetWorkbookName() As String GetWorkbookName = ActiveWorkbook.Name End Function
Nous pourrions ensuite taper la formule suivante dans la cellule A1 pour obtenir le nom du classeur actif :
=GetWorkbookName()
La capture d’écran suivante montre comment utiliser cette formule en pratique :
Nous pouvons voir que la formule renvoie my_vba_workbook.xlsm , qui est le nom du classeur actuellement actif que nous utilisons.
Remarque : L’extension .xlsm représente un classeur Excel prenant en charge les macros.
Exemple 2 : obtenir le nom du classeur actif sans extension
Nous pouvons créer la fonction suivante pour obtenir le nom du classeur actif sans l’extension :
Function GetWorkbookName() As String GetWorkbookName = Left(ActiveWorkbook.Name, InStr(ActiveWorkbook.Name, ".") - 1) End Function
Nous pourrions ensuite taper la formule suivante dans la cellule A1 pour obtenir le nom du classeur actif :
=GetWorkbookName()
La capture d’écran suivante montre comment utiliser cette formule en pratique :
Nous pouvons voir que la formule renvoie my_vba_workbook , qui est le nom du classeur actuellement actif sans l’extension .xlsm .
Remarque : En utilisant les fonctions Left et Instr , nous pouvons extraire tous les caractères du nom du classeur à gauche du point.
Ressources additionnelles
Les didacticiels suivants expliquent comment effectuer d’autres tâches courantes dans VBA :
Comment créer des dossiers à l’aide de VBA
Comment supprimer des dossiers à l’aide de VBA
Comment renommer un fichier à l’aide de VBA
Comment vérifier si le fichier existe à l’aide de VBA