chamboulement des nos de répertoires : en vba comment changer les liens

Le
Alfred WALLACE
Bonjour à tous les gurus d'avril ! j'espère qu'ils
ne se découvriront pas d'un fil

suite à une restructuration de notre structure
réseau, les noms de certains chemains ont ete (ou vont être)
modifiés.

Par exemple, les "underscore" (tiret du "8") sera remplacer
par un tiret du 6 : "_" sera remplacé par "-".

les espaces seront supprimés (ou remplacé par "-")

les lettres accentuées seront, elles aussi modifiées (sans accent).

je cherche à ouvrir les fichiers excel, et, si ceux ci
contiennent des liens :

1 - repérer ces liens (par exemple en gardant le nom du
fichier concerné)
2 - renommé le nom du repertoire selon les regles, ET
corriger le lien de la feuille pour qu'il corresponde.

Voilà,
c'est peut être faisable.
je sais deja parcourir les fichiers dans les dossiers et S/dossiers.
ouvrir chaque fichier excel.
Mais comment savoir si ceux-ci ont des liens, et
comment modifier ces liens.

Merci pour votre aide.

José
Vidéos High-Tech et Jeu Vidéo
Téléchargements
Vos réponses
Gagnez chaque mois un abonnement Premium avec GNT : Inscrivez-vous !
Trier par : date / pertinence
Daniel.C
Le #21506552
Bonjour.
Essaie le code suivant (il est possible qu'il ne fonctionne pas avec
une veersion antérieure à XL2007) :

Sub test()
Dim Liens, Txt As String, i As Long
Liens = ActiveWorkbook.LinkSources(xlOLELinks)
For i = 1 To UBound(Liens)
Txt = Application.Substitute(Liens(i), " ", "-")
Txt = Application.Substitute(Txt, "_", "-")
ActiveWorkbook.ChangeLink Liens(i), Txt, xlOLELinks
Next
Liens = ActiveWorkbook.LinkSources(xlExcelLinks)
For i = 1 To UBound(Liens)
Txt = Application.Substitute(Liens(i), " ", "-")
Txt = Application.Substitute(Txt, "_", "-")
ActiveWorkbook.ChangeLink Liens(i), Txt, xlExcelLinks
Next
End Sub

Daniel

Bonjour à tous les gurus d'avril ! j'espère qu'ils
ne se découvriront pas d'un fil ...

suite à une restructuration de notre structure
réseau, les noms de certains chemains ont ete (ou vont être)
modifiés.

Par exemple, les "underscore" (tiret du "8") sera remplacer
par un tiret du 6 : "_" sera remplacé par "-".

les espaces seront supprimés (ou remplacé par "-")

les lettres accentuées seront, elles aussi modifiées (sans accent).

je cherche à ouvrir les fichiers excel, et, si ceux ci
contiennent des liens :

1 - repérer ces liens (par exemple en gardant le nom du
fichier concerné)
2 - renommé le nom du repertoire selon les regles, ET
corriger le lien de la feuille pour qu'il corresponde.

Voilà,
c'est peut être faisable.
je sais deja parcourir les fichiers dans les dossiers et S/dossiers.
ouvrir chaque fichier excel.
Mais comment savoir si ceux-ci ont des liens, et
comment modifier ces liens.

Merci pour votre aide.

José
Publicité
Poster une réponse
Anonyme