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

Modifier le chemin d'une liaison excel par VBA

2 réponses
Avatar
luc
Bonjour,

J'ai des liaisons entre un fichier PPT 2003 et Excel 2003.

Parfois le chemin change (fichier excel sur le réseau). Comment rétablr le
bon chemin par du code VBA (sanc changer le nom du fichier excel)

Merci

2 réponses

Avatar
Geo

Bonjour,

J'ai des liaisons entre un fichier PPT 2003 et Excel 2003.

Parfois le chemin change (fichier excel sur le réseau). Comment rétablr le
bon chemin par du code VBA (sans changer le nom du fichier excel)

Merci


Apparemment il n'y a pas de solution globale, il faut le faire champ
par champ.
Voici un exemple quasiment copié de l'aide, mais pas testé :
Sub RefaireLiensExcel()
Dim Sld As Slide
Dim Sh As Shape
For Each Sld In ActivePresentation.Slides
For Each Sh In Sld.Shapes
With Sh
If .Type = msoLinkedOLEObject Then
If sh.OLEFormat.ProgID = "Excel.Sheet" Then
With .LinkFormat
.SourceFullName = "c:Mes documentsExceltest.doc"
.AutoUpdate = ppUpdateOptionAutomatic
End With
End If
End If
End With
Next
Next
End Sub

Il ne traite que la cas où c'est le même fichier Excel partout, si ce
n'est pas le cas il faut affiner.

--
A+

Avatar
luc
ok je vais essayer

merci


"Geo" a écrit dans le message de news:


Bonjour,

J'ai des liaisons entre un fichier PPT 2003 et Excel 2003.

Parfois le chemin change (fichier excel sur le réseau). Comment rétablr le
bon chemin par du code VBA (sans changer le nom du fichier excel)

Merci


Apparemment il n'y a pas de solution globale, il faut le faire champ
par champ.
Voici un exemple quasiment copié de l'aide, mais pas testé :
Sub RefaireLiensExcel()
Dim Sld As Slide
Dim Sh As Shape
For Each Sld In ActivePresentation.Slides
For Each Sh In Sld.Shapes
With Sh
If .Type = msoLinkedOLEObject Then
If sh.OLEFormat.ProgID = "Excel.Sheet" Then
With .LinkFormat
.SourceFullName = "c:Mes documentsExceltest.doc"
.AutoUpdate = ppUpdateOptionAutomatic
End With
End If
End If
End With
Next
Next
End Sub

Il ne traite que la cas où c'est le même fichier Excel partout, si ce
n'est pas le cas il faut affiner.

--
A+