Jon se demande s’il existe une fonction équivalente à = ROW () ou = COLUMN () pour les feuilles de calcul. Il doit faire référence (par exemple) à la quatrième feuille d’un classeur, mais il ne peut pas être sûr du nom de la feuille de calcul.

Il existe plusieurs façons d’aborder ce problème, selon ce que vous devez faire. Si vous travaillez avec une feuille de calcul qui a déjà été enregistrée, la formule suivante vous fournira le nom de la feuille de calcul pour Sheet4:

=MID(CELL("filename",Sheet4!A1),FIND("]",CELL( "filename",Sheet4!A1))+1,LEN(CELL("filename", Sheet4!A1)))

Vous devez noter qu’il y a quelques hypothèses dans cette formule.

Tout d’abord (et surtout), cela suppose que vous connaissez le nom initial de la feuille de calcul. Dans ce cas, le nom initial est Sheet4. Une fois la formule en place, les modifications ultérieures du nom de la feuille de calcul seront automatiquement reflétées dans la formule. La deuxième hypothèse est que le classeur dans lequel vous travaillez a été enregistré. Si ce n’est pas le cas, la formule renvoie une erreur jusqu’à ce que le classeur soit enregistré et recalculé.

Une approche différente consiste à utiliser une fonction définie par l’utilisateur. Dans le modèle objet de VBA, toutes les feuilles de calcul d’un classeur sont contenues dans la collection Sheets. Ceux-ci sont, à leur tour, indexés. Ainsi, vous pouvez transmettre une valeur d’index à la fonction et récupérer le nom de la feuille de calcul au numéro d’index de la collection.

Function TabName(snum As Long) As String     If snum > 0 And snum <= Sheets.Count Then         TabName = Sheets(snum).Name     End If End Function

Par exemple, si vous souhaitez connaître le nom de la quatrième feuille de calcul de la collection, vous pouvez utiliser ce qui suit dans votre feuille de calcul:

=TabName(4)

La fonction fonctionnera très bien, même dans un classeur qui n’a pas été enregistré. Il renvoie également le nom de feuille de calcul approprié même si les feuilles de calcul sont renommées ou déplacées.

_Note: _

Si vous souhaitez savoir comment utiliser les macros décrites sur cette page (ou sur toute autre page des sites ExcelTips), j’ai préparé une page spéciale qui comprend des informations utiles.

lien: / excelribbon-ExcelTipsMacros [Cliquez ici pour ouvrir cette page spéciale dans un nouvel onglet de navigateur].

ExcelTips est votre source pour une formation Microsoft Excel rentable.

Cette astuce (7607) s’applique à Microsoft Excel 97, 2000, 2002 et 2003. Vous pouvez trouver une version de cette astuce pour l’interface ruban d’Excel (Excel 2007 et versions ultérieures) ici:

lien: / excelribbon-Referencing_a_Worksheet_Name [Référencer un nom de feuille de travail].