Mutation intempestive des liens hypertexte

  • Initiateur de la discussion Initiateur de la discussion AlibiNatus
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

A

AlibiNatus

Guest
Bonjour à tous,

J'utilise les liens hypertextes depuis longtemps sous excel. J'ai un fichier qui en contient près de mille !!!
A ma grande surprise, la consultation de mon fichier (et des pièces rattachées) sur un autre PC m'a changé l'ensemble des références de mes liens.
Vous imaginez les dégâts : il faut que je reprenne tout !!!
Alors voici mes questions :
1/ Existe-t-il un moyen de changer la partie commune de l'énnoncé de plusieurs liens d'un coup ?
2/ Comment 'figer' mes liens de sorte qu'ils ne changent pas lorsque je change de PC ? (n'y a-t-il pas une question de relatif ou d'absolu là-dessous ?)
Merci d'avance,

AlibiNatus
 
Bonsoir AlibiNatus, le Forum

Oui c'est arrivé aussi à moi aussi... :sick:

1/ Existe-t-il un moyen de changer la partie commune de l'énnoncé de plusieurs liens d'un coup ?

Oui je me suis débrouillé en VBA :


Option Explicit

Const Bad As String = 'C:\\\\\\\\Documents and Settings\\\\\\\\Guest\\\\\\\\'
Const Good As String = 'C:\\\\\\\\Documents and Settings\\\\\\\\Administrator\\\\\\\\'


Sub RebuildHyperlink()
Dim Hyper As Hyperlink

For Each Hyper In Worksheets('Feuil1').Hyperlinks
   
If Not InStr(Hyper.Address, Bad) = 0 Then
        Hyper.Address = WorksheetFunction.Substitute(Hyper.Address, Bad, Good)
   
End If
   
Next

End Sub



2/ Comment \\'figer\\' mes liens de sorte qu'ils ne changent pas lorsque je change de PC ? (n'y a-t-il

Dans la fenêtre Propriété du Menu Fichier, il y a 'Répertoire Web' qui peut servir de racine, mais ce n'est pas vraiment pour travailler sur le Disque C de différent PCs, en général ça fonctionne sur des lecteurs réseaux... Mais tu peux faire des essais.

Bonne Nuit
[ol]@+Thierry[/ol]
 
Ah un Thierry alors 😉

Oh tu sais ce n'est pas bien compliqué, il suffit de changer les Constantes avec les tiennes :

Const Bad As String = 'C:\\\\\\\\Documents and Settings\\\\\\\\Guest\\\\\\\\'

Const Good As String = 'C:\\\\\\\\Documents and Settings\\\\\\\\Administrator\\\\\\\\'

'Of Course' Good est la partie commune de l'adresse qui est à remettre...à la place de la Bad

Il faut aussi penser à changer avec le vrai nom de Feuille :

For Each Hyper In Worksheets('Feuil1').Hyperlinks

Tu mets ce code dans un Module Standard (Module1 par exemple) et tu fais une exécution...

Par contre à ma connaissance, c'est le seul moyen que tu auras pour remettre en ordre en masse ton millier d'Hyperlinks...

Bonne Nuit
[ol]@+Thierry[/ol]

Message édité par: _Thierry, à: 24/04/2006 00:01
 
Bonsoir Thierry,

désolé de revenir à la charge... Mais je ne parviens pas à me dépatouiller, avec le modèle que tu m'as si sympatiquement transmis.
Je viens de voir que l'on peut envoyer des fichiers 'exemple' ici. Pourais-tu trouver le temps de m'en concocter un ?

Disons que l'adresse initiale du lien était de type :
'D:\\Toto\\gugus\\fichier~1',
et qu'elle s'est transformé en :
'C:\\Tata\\gugus\\fichier~1',

que ma feuille s'appelle 'Family'.

Merci d'avance...

Thierry
alibinatus@free.fr
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD
Assurez vous de marquer un message comme solution pour une meilleure transparence.
Retour