Microsoft 365 Trouver le nom du tableau structuré (ListObject) par formule

dionys0s

XLDnaute Impliqué
Bonjour le forum,

Mettons que j'ai un tableau structuré (Onglet Insertion - Tableaux - Tableau).
J'aimerais savoir s'il est possible de bâtir une formule qui aurait comme unique paramètre une cellule du tableau, ou la ligne d'en-tête par exemple, et qui renverrait le nom du tableau.
L'idée finale, c'est que j'ai des kilotonnes de ce genre de tableau dans mes classeurs, avec plein de MFC dans tous les sens, et une telle formule serait très utile pour faire une MFC unique qui serait applicable à n'importe quel tableau structuré.

D'avance, merci pour votre aide.
 

job75

XLDnaute Barbatruc
Bonjour dionys0s,

Avec une fonction VBA c'est assez simple, voyez le fichier joint :
VB:
Function NomTableau(r As Range)
Application.Volatile
Dim LO As ListObject, a$(), n&
For Each LO In r.Parent.ListObjects
    If Not Intersect(r, LO.Range) Is Nothing Then
        ReDim Preserve a(n)
        a(n) = LO.Name
        n = n + 1
    End If
Next
If n Then NomTableau = a Else NomTableau = "" 'vecteur ligne
End Function
Si l'on change le nom d'un tableau il faut appuyer sur F9 pour faire recalculer les formules.

A+
 

Pièces jointes

  • Tableaux(1).xlsm
    19.1 KB · Affichages: 15

BOISGONTIER

XLDnaute Barbatruc
Repose en paix
Bonjour,


Avec une fonction perso qui donne les noms de champs dynamiques.


VB:
Function ListeNomsD()
  Application.Volatile
  Dim a(): ReDim a(1 To Application.Caller.Rows.Count, 1 To 2)
  i = 0
  For s = 1 To Sheets.Count
    For Each c In Sheets(s).ListObjects
       i = i + 1
       a(i, 1) = c.Name
    Next c
  Next s
  ListeNomsD = a
End Function


Boisgontier
 

Pièces jointes

  • NomsChamps.xlsm
    22.8 KB · Affichages: 13
Dernière édition:

dionys0s

XLDnaute Impliqué
Re,

merci pour vos réponses, mais il était important que je me passe de VB.

Moyennement une petite astuce très peu coûteuse en temps lors de la création d'un tableau structuré, je peux maintenant créer hyper rapidement deux MFC qui s'appliquent sur tous les en-têtes de tous les tableaux structurés d'un même onglet. On met un champ en lumière si :
Il n'est composé que de formules identiques (c'est ok => vert)
Il est composé de formules non identiques (c'est dangereux => orange)
S'il n'est composé que de saisies et/ou de vide, aucune des deux MFC ne s'applique.

Tout est dans l'unique onglet et dans le gestionnaire de noms.
 

Pièces jointes

  • MFC LSO.xlsm
    15.3 KB · Affichages: 15

Discussions similaires

Réponses
8
Affichages
392
Réponses
5
Affichages
433

Statistiques des forums

Discussions
311 725
Messages
2 081 943
Membres
101 849
dernier inscrit
florentMIG