[EXCEL 2007] problème macro XL2003

Résolu
Bonjour,

Dans un de mes fichiers .XLS, j'avais créé sous Excel 2003 une fonction dans le module1 pour récupérer le nom de la feuille en cours :

Public Function ExtNomFeuil(lieu As Range) As Integer
cettefeuille = ActiveSheet.Name
ExtNomFeuil = Right(cettefeuille, Len(cettefeuille) - 3)
End Function

Dans chaque feuille où j'en avais besoin (plusieurs), j'utilisais ensuite la formule "=ExtNomFeuil(A1)" dans la cellule où je voulais récupérer le nom de ma feuille.

Maintenant, je suis passée en Excel 2007, mais ma macro ne fonctionne plus.

Qui peut m'aider à transformer ma macro s'il vous plait ?

Merci par avance.
Mariken
Configuration: Windows 7 Internet Explorer 8.0
Microsoft Office 2007

2 réponses

  1. Contributeur
    bonjour

    Comme ceci cela devrait fonctionner :
    Public Function ExtNomFeuil(lieu As Range) As String
    cettefeuille = ActiveSheet.Name
    ExtNomFeuil = Right(cettefeuille, Len(cettefeuille) - 3)
    End Function
    

    pour récupérer le nom de la feuille en cours cela me semble plus juste
    Public Function ExtNomFeuil() As String
        ExtNomFeuil = ActiveSheet.Name
    End Function
    

    L'appel se fait simplement ainsi : "=ExtNomFeuil()"

    Ta version ne peut fonctionner qu'avec des onglets structurés XXX1234 pour récupérer le nombre.
    0
    1. BOnjour,

      Effectivement, toutes mes feuilles sont de la forme TOTO1
      MAlgré la modification (car ça ne change rien dans l'utilisation du résultat ensuite), Excel 2007 ne reconnaît toujours pas ma fonction.
      0
    2. @marikenEuh, erreur, les pages s'appellent TOT1, avec bien les trois premiers caractères supprimés et le reste étant des chiffres
      0
  2. Contributeur
    bonjour

    Excel 2007 ne reconnaît toujours pas ma fonction.

    As-tu autorisé les macros ?

    Tu peux regarder cette explication
    0
    1. M E R C I !!!!
      J'avais oublié des étapes.

      MILLE MERCIS ....
      0