Rechercher : dans
Par :

Perte des liens hypertextes excel

Dernière réponse le 1 avr 2009 à 16:24:43 Martok, le 5 sep 2008 à 18:33:05 
 Signaler ce message aux modérateurs

Bonjour,
J'ai 2 fichiers excel. Dans le premier, j'ai créé beaucoup de lien hypertexte qui m'ouvre des onglets du 2ème fichier. Quand je déplace l'un des 2 fichiers les liens hypertexte sont perduent, excel n'enregistre pas le chemin qui mêne sur l'autre fichier excel. Y'à t'il une solution pour le forcer à garder le bon chemin ?
Merci

Configuration: Windows Vista
Internet Explorer 7.0

Meilleures réponses pour « Perte des liens hypertextes excel » dans :
[Word] Supprimer tous les liens hypertextes VoirLorsque vous copiez-collez un extrait d'une page web, vous risquez fort d'obtenir dans le texte de nombreux liens hypertextes. Voici deux solutions pour supprimer les liens hypertextes d'un document Word. 1° solution : un lien hypertexte à la...
[PHP] Transformer une URL en lien hypertexte cliquable VoirGrâce aux expressions régulières, il est possible de transformer en lien hypertexte toute URL de la forme http://URL (ou ftp://URL) ou bien commençant par www. :
Problème pour ouvrir les liens dans Outlook VoirSi Outlook est dans l'impossibilité d'ouvrir un lien hypertexte, ou si les liens dans les messages ouvrent l'explorateur sans charger la page Web, il suffit de suivre l'une des procédures suivantes : Méthode 1 Méthode 2 Méthode 3 Pour...
Les liens hypertextes VoirPrésentation des ancrages Les liens hypertextes (ancrages) sont des éléments d'une page HTML (soulignés lorsqu'il s'agit de texte) permettant aux internautes de naviguer vers une nouvelle adresse lorsque l'on clique dessus. Ce sont les liens...
Le droit des liens hypertextes VoirIntroduction aux liens hypertextes Les liens hypertextes (parfois appelés pointeurs) sont le moteur de l'interactivité du web. En effet, c'est grâce aux liens qu'il est possible à l'internaute de naviguer entre les pages d'un site, mais également...
Création de liens XML avec XLL VoirIntroduction à XLL XLL est un langage de description des liens hypertextes pour XML. XLL est aussi connu sous le nom de XML:Part2, il s'agit donc de la seconde partie de la norme XML (encore au stade de document de travail du W3C, contrairement...

1

eriiic, le 5 sep 2008 à 23:51:24

Bonsoir,

Ouvre les 2 fichiers et fais 'enregistrer sous' dans son nouveau répertoire pour le 2nd.
Ensuite tu supprime l'original
eric

Répondre à eriiic

2

Martok, le 7 sep 2008 à 17:18:42

Bonjour Eric
Merci de ta réponse. Cela résout la moitier de mon problème puisque je ne peux bouger que 1 seul fichier... J'ai une autre question: J'ai 2 fichiers excel avec des liens hypertexte qui même vers des onglets différent d'un 3ème fichier excel. Je souhaiterai fusionner les 2 premier fichier excel pour en créer un seul. J'ai bien essayé de copier les onglet d'un fichier vers un autre mais les liens hypertexte du fichier copier sont perduent, toujours ce problème de chemin en fait.
Merci

Répondre à Martok

3

eriiic, le 7 sep 2008 à 19:52:31

Le 1er fichier tu peux le déplacer normalement si le 2nd n'a pas de lien dessus.
Et si tu déplace un onglet d'un classeur dans un autre aucune raison que les liens vers un 3ème soient perdus.
Par contre des liens du 3ème vers un des 2 premiers seront perdus si ce 3me fichier est fermé.
Par précaution ouvre TOUS les fichiers concernés avant d'enregistrer dans le nouveau répertoire et garde-les tous ouverts pour les enregistrer dans le nouveau chemin.
eric

Répondre à eriiic

4

martok, le 10 sep 2008 à 18:09:52

Bonsoir eric
J'ai effectué de multiple test, quant il sagit du fichier qui contient les liens tous se passe bien, je peux le déplacer, le renommer et le fusionner mais quand il sagit du fichier source, je ne peux rien faire, le moindre changement se traduit par la perte des liens hypertextes. Pourtant tous les fichier excel sont ouvert, je fais bien enregistrer sous et j'efface le fichier d'origine. Je suis sur excel 2003.
Nico

Répondre à martok

5

eriiic, le 10 sep 2008 à 19:46:21

Si le fichier source est bien un fichier excel et que tu l'ouvres pour faire 'enregistrer sous' je n'ai plus d'idée là, désolé...
Tu penses bien à enregistrer ton fichier ayant les liens après l'opération oui ?
A moins que tu n'aies des macros à mettre à jour dedans ?
Il faudrait que tu mettes un exemple reduit des tes fichiers (sans données confidentielles et que tu constates toujours le pb) en ligne sur cijoint.fr et que tu colles ici le lien fourni.
eric

Répondre à eriiic

6

Martok, le 11 sep 2008 à 11:22:41

Pour simplifier le problème j'ai effectué 2 tests:
Sur le bureau j'ai créé 2 feuilles de calcul microsoft excel, Donc j'ai:
- Nouveau feuille de calcul microsoft excel
- Nouveau feuille de calcul microsoft excel (2)
Dans Nouveau feuille de calcul microsoft excel je créé dans la case A1 un lien hypertexte qui mène vers la feuil3 de
Nouveau feuille de calcul microsoft excel (2).
Je créé un dossier nommé A
J'ouvre les 2 fichiers excel et je fais dans Nouveau feuille de calcul microsoft excel fichier, enregistré sous dans le Dossier A, puis je supprime Nouveau feuille de calcul microsoft excel qui est sur le bureau.
Quand je clique sur ma case A1 de Nouveau feuille de calcul microsoft excel, le chemin est bien enregistré et mène toujours dans Nouveau feuille de calcul microsoft excel (2), feuil3.
Cela marche aussi bien pour un déplacement ou un changement de nom, le chemin est sauvegardé.

Test 2:
Je recommence à 0:
J'ai créé toujours mes 2 fichiers, toujours le même lien, j'ouvre les 2 fichiers mais la c'est Nouveau feuille de calcul microsoft excel (2) que je déplace dans le Dossier A en effectuent un fichier, enregistrer sous puis je supprime Nouveau feuille de calcul microsoft excel (2) et je clique sur enregistrer dans Nouveau feuille de calcul microsoft excel comme tu me la demandé dans ton dernier message.
Mais la quand je clique sur A1 de Nouveau feuille de calcul microsoft excel, il me met fichier spécifié introuvable et l'erreur s'affiche égualement si je renomme Nouveau feuille de calcul microsoft excel (2).

Question: As tu fais le test chez toi ?

Voici l'adresse qu'il affiche pour le lien test 1:
Nouveau%20Feuille%20de%20calcul%20Microsoft%20Excel%20(2).xl­s#Feuil3!A1

Voici l'adresse qu'il affiche apres déplacement dans le dossier A: ../Nouveau%20Feuille%20de%20calcul%20Microsoft%20Excel%20(2)­.xls#Feuil3!A1

C'est étrange de remarquer que le dossier A n'est pas marqué et on a à la place ../
De plus les espaces sont signalé par %20
Néanmoins cela fonctionne !

Evidemment dans test 2 quand c'est le fichier source qui est déplacé l'adresse reste:
Nouveau%20Feuille%20de%20calcul%20Microsoft%20Excel%20(2).xl­s#Feuil3!A1
Les ../ n'ont pas était copier

Dans mon travail, tous ceci est beaucoup plus compliqué puisque c'est plus de 400 liens hypertexte réparti sur plus de 20 feuilles excel d'où la nécessité pour moi d'automatisé le processus si je dois déplacer une des feuilles ou la renommer.

Répondre à Martok

7

eriiic, le 11 sep 2008 à 22:39:13

Bonsoir,

je te répond rapidement car je n'ai pas beaucoup de temps.
Donc oui, j'avais bien fait le test car tu avais fini par mettre des doutes et tout était ok.
Par contre je me demande si tu n'es pas sur excel 2007, moi c'est 2003. Mais j'ai quand même du mal à imaginer une régression là dessus...
Je relirai plus tranquillement ta prose plus tard
eric

Répondre à eriiic

8

martok, le 22 sep 2008 à 20:24:50

Coucouc Eric
Tu m'as abandonné ? sniff

Répondre à martok

9

eriiic, le 22 sep 2008 à 21:47:17

Heuuuu, je t'avais un peu perdu oui ;-)
avec d'autres messages qui s'étaient empilés dessus, désolé.

Du coup j'ai repris à 0, j'ai retesté et .... je ne suis arrivé à rien...
Je pense que j'avais dû tester les liens et non pas les hyperliens. Donc je confirme, aucune mise à jour des hyperliens lors de déplacement des fichiers.
Je te propose une petite macro pour les mettre à jour :

Sub MajHyperlinks()
    Const repSource = "../Test/test.xls"
    Const repDest = "../Test2/test.xls"
    Dim h As Hyperlink
    For Each h In ActiveSheet.Hyperlinks
        MsgBox ("Address : " & h.Address & vbLf & "SubAddress : " & " " & h.SubAddress)
        If h.Address = repSource Then
            h.Address = repDest
        End If
    Next
End Sub

J'ai fait au plus simple ce qui t'oblige à déclarer les 2 constantes repSource (ancienne adresse de tes hyperlinks) et repDest (nouvelle adresse) en début de programme.
La macro, à copier dans un module, balaiera tous les hyperlinks de la feuille active et les modifiera.
Pour faciliter l'analyse de tes hyperlinks je t'ai mis une msgbox pour t'afficher l'adresse de tous les hyperlinks, à valider à chaque fois. Tu peux la supprimer en mettant une ' devant la ligne si tu es à peu près sûr de tes adresses.

Si vraiment tu en as beaucoup (style de nombreux classeurs avec de nombreuses feuilles à traiter) et à faire régulièrement on pourra améliorer.
Teste déjà avec ça, je pense que ça doit marcher

eric

Répondre à eriiic

10

Martok, le 10 oct 2008 à 15:11:25

Salut Eric
Ca ne marche pas chez moi, disons que la manip est un peut compliqué, je dois manquer d'information.
La macro je l'a créée bien dans le classeur qui contient les liens ?
L'adresse que je rentre c'est l'adresse qui à sur le lien hypertexte où l'adresse C:\Documents and Settings\Mes documents\Favoris\1.xls par exemple ?
A quel moment j'éxécute la macro ?
Les 2 classeurs doivent être ouvert ?
Quand je déplace la macro je fais un enregistrer sous ?

Merci
Nico

Répondre à Martok

11

eriiic, le 10 oct 2008 à 16:14:11

Bonjour,

heuuu, 20 jours ça fait long pour se rappeler...
Donc la macro tu la crée dans un classeur quelconque, elle pourra traiter tous tes classeurs.
Tu as 2 constantes à définir au début : Const repSource et Const repDest

dans un fichier tu as des liens vers un fichier test.xls qui est dans le répertoire c:\test\ (source), tu mets donc :
Const repSource = "c:\Test\test.xls"

Ce fichier test.xls tu désires le déplacer vers le répertoire c:\test2 (destination), tu mets donc :
Const repDest = "../Test2/test.xls"
et tu fais ta copie de fichier vers le nouveau répertoire.

Tu ouvres un fichier ayant des hyperlinks vers ce fichier test.xls, tu actives une feuille ayant ces liens et tu lances la macro (elle ne traite QUE la feuille active), tu passes à la feuille suivante si besoin et tu relances la macro. Si tu as d'autres classeurs même manip.
Normalement tous tes liens sont réparés et tu enregistres tes fichiers.

eric

Répondre à eriiic

12

 mabele, le 1 avr 2009 à 16:24:43

Salut,

Je suis peut-être tard pour répondre à ta question mais je viens de découvrir un logiciel qui répare les liens hypertexte brisés lors d'un transfert de fichiers d'un répertoire à un autre. Tu pourras le trouver à l'adresse suivante: http://www.linkfixerplus.com/pressroom/lfp-customers.htm.

Répondre à mabele
Collection CommentÇaMarche.net