Modifier des liens Excel-Pptx par messageBox
Bonjour le forum,
J'ai récupéré un bout de code pour pouvoir modifier le nom du fichier en lien avec powerpoint.
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
| Sub ChgLiaisonOle()
Dim Slde As Slide, Shpe As Shape, lNucar As Long, sNewFile As String, sFichierOLE As String, sNewOLE As String
For Each Slde In ActivePresentation.Slides
For Each Shpe In Slde.Shapes
If Shpe.Type = msoLinkedOLEObject Then
sFichierOLE = Mid(Shpe.LinkFormat.SourceFullName, InStrRev(Shpe.LinkFormat.SourceFullName, "\"))
sNewOLE = Replace(sFichierOLE, "FichierA", "Fichier1") 'pour le remplacement
sNewFile = ActivePresentation.Path & sNewOLE
Shpe.LinkFormat.SourceFullName = sNewFile
End If
Next Shpe
Next Slde
MsgBox sNewFile
End Sub |
Je souhaiterais pouvoir faire le "Replace" par messageBox pour que chaque utilisateurs puisse faire la modification sans rentrer dans VBA.
Ce que je souhaite au final :
Je renomme mon "FichierA" en "Fichier1" (donc je perds le lien vers pptx). [Il existe aussi un fichierB, fichierC...qu'il faudra aussi renommer fichier2, fichier3...]
Je lance une macro qui m'ouvre un messageBox avec : "De quel fichier voulez-vous modifier le lien ?" (la réponse dans ce cas sera "FichierA" ou "FichierB"...) / "Comment voulez-vous renommer votre lien" (Là on saisie "Fichier1" ou "Fichier2"...).
En validant par OK, la macro remplace tous les liens s'apellant "FichierA" par "Fichier1"...
Je précise que ne suis pas programmeur (vous vous en doutez !) mais que à force de lire des bouts de codes j'arrive (plus ou moins) à adapter (des fois...).
Mais je ne sais pas faire de messageBox avec question/réponse...Et surtout, je ne sais pas si dans ce cas-là il faut mieux la macro sur Excel ou sur Pptx ???
Dans le cas du code ci-dessus, c'est sur pptx, mais est-ce la meilleur solution ?
Merci à vous de prendre le temps de me lire.
Cordialement,
Gilles