2000 Liens hypertextes rompus

Eloise -  
 Utilisateur anonyme -
Bonjour,

Je travail sur Excel 2007, et j'ai un tableau de plus de 2000 liens hypertextes. aujourd'hui en voulant utiliser mes liens j'ai un message : "il est possible que cet emplacement ne soit pas fiable". En effet tous mes liens ont changé d'adresse, au lieu de :

\\serveur\Travail\@Dir\MP\Document MP...

j'ai : C:\Users\qualite\appData\Roaming\Microsoft\Excel\Documents MP...

Qu'est ce qui a put engendrer un tel bazar ? Comment faire pour ne pas avoir à réfaire 2000 liens hypertextes un par un ...

Merci de votre aide !!!

Eloïse

9 réponses

Utilisateur anonyme
 
Bonjour,

Je ne connais pas la réponse concernant la modification des liens.
Je peux cependant te proposer une solution pour remettre les liens en état:

Suis pas à pas cette explication et tu dois retrouver tes liens.
1 - Faire Alt+F11 .L'éditeur Vbe s'ouvre.
Normalement à gauche dans une fenêtre projet tu vois les feuilles.

2 Double clic sur la feuille contenant les liens hypertexte.

3 Dans la grande fenêtre blanche où il y a marqué Général et Déclarations colle cette macro:

Sub LienNouveauPath()
Dim lh As Hyperlink
pos1 = 0
For Each lh In Range("A1:C10").Hyperlinks
Do
pos1 = pos + 1
pos = InStr(pos1, lh.Address, "\", 1)
Loop While pos <> 0
nomfichier = Right(lh.Address, Len(lh.Address) - (pos1 - 1))
lh.Address = "\\serveur\Travail\@Dir\MP\" & nomfichier
Next
End Sub

4 Modifie ("A1:C10"), ligne 4 de la macro par la plage de cellules concernées. Tu peux la mettre la plus grande possible, même s'il y a des cellules qui ne possèdent pas de liens hypertexte.

5 Ligne 10 de la macro, contrôle bien que c'est le bon chemin

6 Dans la barre d'outils de l'éditeur, il y a un petit triangle vert. tu cliques et la macro va s'exécuter. Elle regarde toutes les cellules de la plage que tu as indiquées et remplace systématiquement l'ancien chemin par le nouveau.

Cordialement

Patrice
1
Eloise
 
help !
0
Raymond PENTIER Messages postés 71867 Date d'inscription   Statut Contributeur Dernière intervention   17 397
 
Essaie de sélectionner toute ta feuille et d'utiliser la commande Rechercher/Remplacer
0
Eloïse
 
J'ai essayé et ça ne marche pas car mes liens hypertextes ne sont pas affichés sous la forme de leur adresse. Du coup Excel me dit qu'il ne trouve pas les mots que je recherche et ne peux donc pas les remplacer.

Avez vous une idée de ce qui a pu changer tout mes liens du jour au lendemain?

Et avez vous une autre solution pour m'éviter d'avoir à refaire plus de 2000 liens hypertextes?;;;

Merci !
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
gueno
 
Bonjour,
avez vous eu une réponse. J'ai le même problème avec un peu moins de liens.
0
Eloïse
 
J'ai eu des réponses mais aucune ne fonctionne, mon tableau est toujours inutilisable...
0
Eloïse
 
Merci pour votre réponse ! C'est presque ça !

Une fois dans le dossier MP, chaque document est dans un sous dossier différent. Il manque donc le chemin pour accéder à ce sous-dossier. Ce qui est néanmoins utile c'est que le nom de chacun de ces sous dossier est écrit sur mon tableau.
En fait ce tableau est composé comme cela:

sous dossier 1 | lien fichier du sous dossier( SD)1| lien autre ficher au SD 1..
sous dossier 2 | lien fichier sous dossier2| lien autre fichier au SD2 etc..

Y aurait-il possibilité de récupérer les noms de ces sous dossier par ligne et de les insérer dans l'adresse du lien hypertexte pour chaque ligne?
0
Utilisateur anonyme
 
Peux tu donner des exemples complets de liens avant modif par excel et maintenant avec les sous dossiers?

Cordialement Patrice
0
Eloïse
 
Lorsque mon tableau marchait j'avais : fille ///\\serveur\Travail\@Dir\MP\Documents techniques MP maison\Coviox T 70\FT.pdf

"Coviox T 70" étant un dossier ( que j'ai appelé sous dossier dans ma dernière réponse)

Ensuite mes liens ont changés en C:\Users\qualite\appData\Roaming\Microsoft\Excel\Documents techniques MP maison\Coviox T70\FT.pdf
0
Utilisateur anonyme
 
Salut Eloïse

En fonction de tes indications, j'ai modifié un peu ma macro. Je considère que maison\ est vrai sur l'ancien et le nouveau lien.
Je concatène l'adresse ancienne \\serveur........maison\ avec le répertoire ou les répertoires et le nom du fichier.
J'ai mis une condition, si la macro ne trouve pas maison\ le lien ne sera pas changé.

Sub LienNouveauPath()
Dim lh As Hyperlink
For Each lh In Range("a1:c10").Hyperlinks
posmaison = InStr(1, lh.Address, "maison\", 1)
If posmaison <> 0 Then
lh.address= "\\serveur\Travail\@Dir\MP\Documents techniques MP maison\" & Mid(lh.Address, posmaison + 7, (Len(lh.Address) - posmaison))
End If
Next
End Sub

Tiens moi au courant de tes esssais.

Cordialement

Patrice
0