XL 2013 Suppression noms cachés dans un classeur

aminovsky

XLDnaute Nouveau
Bonjour à tous
dans un classeur ou j'ai plusieurs noms défini j'ai utilisé le code ci-dessous pour les supprimer, mais après vérification j'ai constaté que deux noms ne s'effacent pas (_xlfn.iferror et _xlfn.SUMIFS)

VB:
Sub DeleteAllNames()
    Dim nm As name
    On Error Resume Next
    For Each nm In ThisWorkbook.Names
        nm.Delete
    Next nm
    On Error GoTo 0
End Sub
 

Dranreb

XLDnaute Barbatruc
Bonjour.
Oui, j'ai aussi constaté que la collection Names d'un Workbook contient ce genre de choses non effaçables, qui n'ont rien à voir avec les noms montrés par le gestionnaire de noms.
À l'inverse les noms des plages couvertes par des ListObject, montrés par lui, n'y figurent pas.
Et lui ne montre pas non plus des références qui y sont, nommées par le solveur, mais effaçables, elles.
 

Dranreb

XLDnaute Barbatruc
Je pense que non.
Ils semblent liés à certaines fonctions qui n'existaient pas dans des versions précédentes d'Excel. Mais c'est complètement incompréhensible, car je pense que ça ne permet de toute façon quand même pas de faire fonctionner un classeur qui les utilise, enregistré en .xls, avec une version antérieure.
 

job75

XLDnaute Barbatruc
Bonjour,

En réponse à un MP d'aminovsky je confirme ce qu'a dit Dranreb.

Ces noms commençant par "_xlfn." se créent systématiquement dans les fichiers .xlsx ou .xlsm chaque fois qu'on utilise une fonction qui n'existait pas dans les versions antérieures à Excel 2007.

Comme SIERREUR, NB.SI.ENS, SOMME.SI.ENS, MOYENNE.SI, MOYENE.SI.ENS.

Je suppose qu'ils sont nécessaires pour la gestion de ces fonctions.

On ne peut pas supprimer ces noms "parasites" mais ils ne sont pas gênants.

Si on veut absolument les éviter il suffit de ne pas utiliser les fonctions que j'ai indiquées, c'est toujours possible.

A+
 

Discussions similaires

Statistiques des forums

Discussions
312 512
Messages
2 089 193
Membres
104 060
dernier inscrit
peffaumoikemmi-pro-5430