Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

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

1 réponse
Avatar
Alfred WALLACE
Bonjour =E0 tous les gurus d'avril ! j'esp=E8re qu'ils
ne se d=E9couvriront pas d'un fil ...

suite =E0 une restructuration de notre structure
r=E9seau, les noms de certains chemains ont ete (ou vont =EAtre)
modifi=E9s.

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

les espaces seront supprim=E9s (ou remplac=E9 par "-")

les lettres accentu=E9es seront, elles aussi modifi=E9es (sans accent).

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

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

Voil=E0,
c'est peut =EAtre 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=E9

1 réponse

Avatar
Daniel.C
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é