Précédent   Forum des professionnels en informatique > Logiciels > Microsoft Office > Excel
Excel Forum d'entraide sur Excel. Vos questions sur les fonctions, formules, manipulations, et tout sujet qui ne trouve pas sa place dans un sous-forum.
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 13/01/2012, 15h27   #1
Invité régulier
 
Femme
Inscription : décembre 2011
Messages : 25
Détails du profil
Informations personnelles :
Sexe : Femme
Localisation : France

Informations forums :
Inscription : décembre 2011
Messages : 25
Points : 9
Points : 9
Par défaut Pb avec la suppression de noms en erreur

Bonjour.
J'ai fait une macro pour supprimer les noms définis dans mon classeur en erreur mais elle ne fonctionne pas pour tous les noms.
Je cherche "REF" dans le RefersTo mais parfois, ça n'apparaît pas à cet endroit.
Quand je regarde dans Excel, je le vois dans un champ qui s'appelle "Valeur" mais je ne trouve pas comment il s'appelle en VB.
Est-ce que quelqu'un pourrait m'aider SVP ?
Voici le code que j'ai écrit :
Code :
1
2
3
4
5
6
7
8
9
10
 
For Each nm In ActiveWorkbook.Names
 
      RECUPRefersTo = nm.RefersTo
 
      If RECUPRefersTo Like "*REF*" Then
               nm.Delete
      End If
 
Next
Merci beaucoup.
mep1607 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 13/01/2012, 15h41   #2
Expert Confirmé Sénior
 
Avatar de jfontaine
 
Homme Jérôme FONTAINE
Contrôleur de Gestion
Inscription : juin 2006
Messages : 3 915
Détails du profil
Informations personnelles :
Nom : Homme Jérôme FONTAINE
Âge : 38
Localisation : France, Sarthe (Pays de la Loire)

Informations professionnelles :
Activité : Contrôleur de Gestion

Informations forums :
Inscription : juin 2006
Messages : 3 915
Points : 7 227
Points : 7 227
Bonjour,

Pour rechercher une chaine de caractère dans une autre => INSTR

Code :
1
2
3
If Instr(RECUPRefers, "REF")>0 Then
      nm.Delete
End If
A tester dans ton cas de figure
__________________
Jérôme

Citation:
"Ils ne savaient pas que c'était impossible, alors ils l'ont fait" - Marc Twain
Si la réponse répond à votre besoin, votre vote nous encouragera.
Dans le cas ou la réponse mérite, à vos yeux, un , nous faire partager la raison de ce vote, pourrait nous permettre de nous améliorer.
jfontaine est actuellement connecté   Envoyer un message privé Réponse avec citation 00
Vieux 13/01/2012, 15h57   #3
Invité régulier
 
Femme
Inscription : décembre 2011
Messages : 25
Détails du profil
Informations personnelles :
Sexe : Femme
Localisation : France

Informations forums :
Inscription : décembre 2011
Messages : 25
Points : 9
Points : 9
C'est gentil mais ça ne répond pas à mon problème, le like fonctionne.

Mon problème est que, pour que je sache que le nom défini est en erreur, il y a une façon habituelle, c'est de tester le RefersTo qui contient #REF.

Seulement, ce n'est pas toujours le cas.

Quand je fais Alt/I/N/D dans Excel et que je regarde le nom défini, je vois le #REF dans un champ qui est appelé VALEUR, pas dans le champs qui correspond au RefersTo.

Et ce champ Valeur, je n'arrive pas à y accéder en VB. J'ai mis des espions partout, sur toutes les variables possibles, et je ne le trouve pas.

Vous pourriez m'aider ?
mep1607 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 13/01/2012, 16h02   #4
Expert Confirmé Sénior
 
Avatar de jfontaine
 
Homme Jérôme FONTAINE
Contrôleur de Gestion
Inscription : juin 2006
Messages : 3 915
Détails du profil
Informations personnelles :
Nom : Homme Jérôme FONTAINE
Âge : 38
Localisation : France, Sarthe (Pays de la Loire)

Informations professionnelles :
Activité : Contrôleur de Gestion

Informations forums :
Inscription : juin 2006
Messages : 3 915
Points : 7 227
Points : 7 227
Citation:
dans un champ qui est appelé VALEUR
Est ce que tu parles d'une plage nommée "VALEUR" ?
__________________
Jérôme

Citation:
"Ils ne savaient pas que c'était impossible, alors ils l'ont fait" - Marc Twain
Si la réponse répond à votre besoin, votre vote nous encouragera.
Dans le cas ou la réponse mérite, à vos yeux, un , nous faire partager la raison de ce vote, pourrait nous permettre de nous améliorer.
jfontaine est actuellement connecté   Envoyer un message privé Réponse avec citation 00
Vieux 13/01/2012, 16h18   #5
Invité régulier
 
Femme
Inscription : décembre 2011
Messages : 25
Détails du profil
Informations personnelles :
Sexe : Femme
Localisation : France

Informations forums :
Inscription : décembre 2011
Messages : 25
Points : 9
Points : 9
Citation:
Envoyé par jfontaine Voir le message
Est ce que tu parles d'une plage nommée "VALEUR" ?
Non. Quand je vais dans le gestionnaire de noms (par Alt/I/N/D, je ne sais pas y aller autrement), j'ai :
Nom / Valeur / Fait référence à / Etendue.
mep1607 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 13/01/2012, 16h27   #6
Expert Confirmé Sénior
 
Avatar de jfontaine
 
Homme Jérôme FONTAINE
Contrôleur de Gestion
Inscription : juin 2006
Messages : 3 915
Détails du profil
Informations personnelles :
Nom : Homme Jérôme FONTAINE
Âge : 38
Localisation : France, Sarthe (Pays de la Loire)

Informations professionnelles :
Activité : Contrôleur de Gestion

Informations forums :
Inscription : juin 2006
Messages : 3 915
Points : 7 227
Points : 7 227
Désolé, mais je n'ai pas la version 2007 sous la main et je ne vois pas du tout a quoi correspond Valeur
__________________
Jérôme

Citation:
"Ils ne savaient pas que c'était impossible, alors ils l'ont fait" - Marc Twain
Si la réponse répond à votre besoin, votre vote nous encouragera.
Dans le cas ou la réponse mérite, à vos yeux, un , nous faire partager la raison de ce vote, pourrait nous permettre de nous améliorer.
jfontaine est actuellement connecté   Envoyer un message privé Réponse avec citation 00
Vieux 13/01/2012, 16h28   #7
Invité régulier
 
Femme
Inscription : décembre 2011
Messages : 25
Détails du profil
Informations personnelles :
Sexe : Femme
Localisation : France

Informations forums :
Inscription : décembre 2011
Messages : 25
Points : 9
Points : 9
Citation:
Envoyé par jfontaine Voir le message
Désolé, mais je n'ai pas la version 2007 sous la main et je ne vois pas du tout a quoi correspond Valeur
Merci quand même.
mep1607 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 13/01/2012, 16h54   #8
Membre Expert
 
Homme
Retraité
Inscription : avril 2011
Messages : 694
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : France

Informations professionnelles :
Activité : Retraité

Informations forums :
Inscription : avril 2011
Messages : 694
Points : 1 446
Points : 1 446
Bonjour,

Dans le gestionnaire de noms, le champ Valeur indique la valeur de la cellule à laquelle il est fait référence.
Si j’affecte le nom "Toto" à la cellule A1 de la feuille "Feuil1" qui contient la valeur "Tutu", dans le gestionnaire de nom je vais lire :
Nom : Toto
Valeur : Tutu
Fait référence à : =Feuil1 !$A$1

Cordialement.
gFZT82 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 13/01/2012, 17h09   #9
Invité régulier
 
Femme
Inscription : décembre 2011
Messages : 25
Détails du profil
Informations personnelles :
Sexe : Femme
Localisation : France

Informations forums :
Inscription : décembre 2011
Messages : 25
Points : 9
Points : 9
Citation:
Envoyé par gFZT82 Voir le message
Bonjour,

Dans le gestionnaire de noms, le champ Valeur indique la valeur de la cellule à laquelle il est fait référence.
Si j’affecte le nom "Toto" à la cellule A1 de la feuille "Feuil1" qui contient la valeur "Tutu", dans le gestionnaire de nom je vais lire :
Nom : Toto
Valeur : Tutu
Fait référence à : =Feuil1 !$A$1

Cordialement.
Merci mais je ne peux pas accéder aux cellules elles-mêmes.
Je vais dans un classeur que je ne connais pas et quand j'y entre, j'ai un message qui me dis "la mise à jour des liaisons ne peut pas se faire etc...".
Je veux donc juste supprimer toutes les liaisons incorrectes.
Je n'ai aucun moyen de savoir à quelles cellules ces liaisons font référence.
mep1607 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 13/01/2012, 17h20   #10
Expert Confirmé Sénior
 
Avatar de jfontaine
 
Homme Jérôme FONTAINE
Contrôleur de Gestion
Inscription : juin 2006
Messages : 3 915
Détails du profil
Informations personnelles :
Nom : Homme Jérôme FONTAINE
Âge : 38
Localisation : France, Sarthe (Pays de la Loire)

Informations professionnelles :
Activité : Contrôleur de Gestion

Informations forums :
Inscription : juin 2006
Messages : 3 915
Points : 7 227
Points : 7 227
Citation:
Je vais dans un classeur que je ne connais pas et quand j'y entre, j'ai un message qui me dis "la mise à jour des liaisons ne peut pas se faire etc...".
Je veux donc juste supprimer toutes les liaisons incorrectes.
Es tu certaines que toutes les liaisons vers l'autre classeur sont en plages nommées?
__________________
Jérôme

Citation:
"Ils ne savaient pas que c'était impossible, alors ils l'ont fait" - Marc Twain
Si la réponse répond à votre besoin, votre vote nous encouragera.
Dans le cas ou la réponse mérite, à vos yeux, un , nous faire partager la raison de ce vote, pourrait nous permettre de nous améliorer.
jfontaine est actuellement connecté   Envoyer un message privé Réponse avec citation 00
Vieux 13/01/2012, 17h26   #11
Invité régulier
 
Femme
Inscription : décembre 2011
Messages : 25
Détails du profil
Informations personnelles :
Sexe : Femme
Localisation : France

Informations forums :
Inscription : décembre 2011
Messages : 25
Points : 9
Points : 9
Citation:
Envoyé par jfontaine Voir le message
Es tu certaines que toutes les liaisons vers l'autre classeur sont en plages nommées?
Celles qui ne sont pas en plages nommées ne m'embêtent pas.

Je veux juste supprimer celles qui sont en plages nommées.

Ca fonctionne sur toutes celles dont le code "#REF" est présent dans RefersTo mais je me suis aperçue depuis peu que ce n'est pas toujours le cas et qu'il y en a dont le "#REF" est dans un autre champ...
mep1607 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 13/01/2012, 17h36   #12
Invité régulier
 
Femme
Inscription : décembre 2011
Messages : 25
Détails du profil
Informations personnelles :
Sexe : Femme
Localisation : France

Informations forums :
Inscription : décembre 2011
Messages : 25
Points : 9
Points : 9
Citation:
Envoyé par mep1607 Voir le message
Merci mais je ne peux pas accéder aux cellules elles-mêmes.
Je vais dans un classeur que je ne connais pas et quand j'y entre, j'ai un message qui me dis "la mise à jour des liaisons ne peut pas se faire etc...".
Je veux donc juste supprimer toutes les liaisons incorrectes.
Je n'ai aucun moyen de savoir à quelles cellules ces liaisons font référence.
Excuse-moi, je ne t'ai pas bien répondu. En fait, dans le champ Valeur dont tu parles, j'ai #REF. Le problème, c'est que je le vois à l'écran mais je ne peux pas y accéder en VB.
mep1607 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 14/01/2012, 07h59   #13
Rédacteur
 
Avatar de Ormonth
 
Homme Didier GONARD
Formateur Développeur Office - indépendant
Inscription : février 2008
Messages : 2 353
Détails du profil
Informations personnelles :
Nom : Homme Didier GONARD
Localisation : France, Loire Atlantique (Pays de la Loire)

Informations professionnelles :
Activité : Formateur Développeur Office - indépendant

Informations forums :
Inscription : février 2008
Messages : 2 353
Points : 4 685
Points : 4 685
Bonjour,

pour info le gestionnaire de nom a évolué depuis 2007, d'où les quiproquos, cf image...

OrmonthData446.jpg

cordialement,

Didier
__________________
Didier Gonard

Ps :
Pour noter positivement ou négativement un post, vous pouvez cliquer sur les pouces en bas à droite !
Tutoriels : Voir la liste de mes tutoriels et mon site pro sur ma Page DVP
N'oubliez pas de mettre : ..quand c'est le cas !
Ormonth est déconnecté   Envoyer un message privé Réponse avec citation 20
Vieux 14/01/2012, 08h24   #14
Rédacteur
 
Avatar de Ormonth
 
Homme Didier GONARD
Formateur Développeur Office - indépendant
Inscription : février 2008
Messages : 2 353
Détails du profil
Informations personnelles :
Nom : Homme Didier GONARD
Localisation : France, Loire Atlantique (Pays de la Loire)

Informations professionnelles :
Activité : Formateur Développeur Office - indépendant

Informations forums :
Inscription : février 2008
Messages : 2 353
Points : 4 685
Points : 4 685
Bonjour,
@mep1607, essayes ainsi :

Code :
1
2
3
4
5
6
7
Sub RobotMenage() 'pour version 2007 et plus !
Dim Nme As Name
    For Each Nme In ActiveWorkbook.Names
        If Nme.ValidWorkbookParameter = False Then Nme.Delete
    Next Nme
Exit Sub
End Sub
Cordialement,

Ps : si le côté technique de la réponse = OK ou pas => pensez à cliquer sur les pouces et quand question résolue à la taguer résolue, et chaque action vous rapporte des points

Didier
__________________
Didier Gonard

Ps :
Pour noter positivement ou négativement un post, vous pouvez cliquer sur les pouces en bas à droite !
Tutoriels : Voir la liste de mes tutoriels et mon site pro sur ma Page DVP
N'oubliez pas de mettre : ..quand c'est le cas !
Ormonth est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 19h28.


 
 
 
 
Partenaires

Hébergement Web