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

Ajouter un commentaire

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