Bonjour à tous,

Pour supprimer les noms dans un classeur, j'utilisais le code ci-dessous qui fonctionnait très bien, jusqu'à ce que je rencontre un nom qui possède un underscore devant son nom (ex : "_nom"), ce qui me renvoie une erreur type "Erreur d'execution '1004' :

Nom : 1004.PNG
Affichages : 724
Taille : 8,5 Ko

Voici le code. Le pointeur de debogage s'arrête à la ligne "N.Delete" :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
Sub Test()
Dim N As Name, A As Integer
Dim Sh As Worksheet
Set Sh = ThisWorkbook.Worksheets.Add
With Sh
.Range("A1") = "Nom"
.Range("B1") = "Plage de cellules"
A = 1
For Each N In ThisWorkbook.Names
A = A + 1
.Range("A" & A) = N.Name
.Range("B" & A) = "'" & N.RefersToLocal
N.Delete
Next
.Range("A1").CurrentRegion.EntireColumn.AutoFit
End With
End Sub
PS : le résultat de l'execution du code ci-dessus me donne :

"Nom Plage de cellules
_xlfn.SUMIFS =#NOM?
"

C'est donc ce qui me fait penser que le problème vient du _ underscore car tous les autres noms que j'avais dans le classeur ont disparus.

Savez-vous comment régler ce soucis svp ?
Merci
Canary