Restriction dans une boucle FOR EACH NEXT ne marche pas

Sebast

XLDnaute Impliqué
Bonjour,

Je n’arrive pas à mettre une restriction dans une boucle for each … next …
Mon programme crée des champs nommés (indispensables pour la suite) mais qui sont handicapants par la suite quand je copie des onglets pour mon analyse (Excel me demande de renommer systématiquement …)
En clair, en fin de programme, je supprime les noms de champs mais je dois en conserver un car ce champs (« POIDS », en l’occurrence) me sert à valider la saisie de données (validation de données, autoriser via liste etc.) et si je suprime tous les champs nommés, je ne peux pas saisir …

En commentaire les instructions dont je pensais qu’elles étaient valables, mais qui malheureusement font que ça plante … :


Sub Supprimer_Champs_Nommés()
Dim N As Name

‘ If N<> "POIDS" then ‘ je restreins ma boucle aux noms différents de POIDS
‘ ça plante aussi avec N<>POIDS (sans les guillemets »)

For Each N In ActiveWorkbook.Names
N.Delete
Next N

‘ End if ‘ fin de la restriction
End Sub


Qui peut me dire comment introduire une restriction sur un nom de champ ?
Merci d'avance pour vos lumières
 

Sebast

XLDnaute Impliqué
Re : Restriction dans une boucle FOR EACH NEXT ne marche pas

Bonsoir Pierrot93,

un grand merci pour ton aide : ça marche parfaitement !
En fait, j'avais un problème de syntaxe : visiblement, la restriction est à placer dans la boucle. Je ne comprends pas encore pourquoi la mettre plus haut gêne mais le résultat est là ...

Encore merci et bonne soirée
@+
 

Discussions similaires

Statistiques des forums

Discussions
312 836
Messages
2 092 656
Membres
105 482
dernier inscrit
Eric.FKF