Remplacer une liaison par VB

Résolu
touroul Messages postés 509 Date d'inscription   Statut Membre Dernière intervention   -  
touroul Messages postés 509 Date d'inscription   Statut Membre Dernière intervention   -

Bonjour le forum

Mon fichier Excel comporte une liaison vers un autre fichier, variable.

J'ai écrit une macro me permettant d'ouvrir ce fichier variable, je cherche à présent à remplacer la liaison existante par la nouvelle, mais Excel ne comprend pas mes variables (Incompatibilité de type)


Voici mon code :

Sub Test()

Dim Ancien As Variant
Dim Nouveau As Variant
Ancien = ActiveWorkbook.LinkSources

Nouveau = Application.GetOpenFilename(, , "Sélectionner")

Workbooks.Open filename:=Nouveau
MsgBox (Nouveau)

ActiveWorkbook.ChangeLink Name:=Ancien, NewName:=Nouveau, Type:=xlExcelLinks

MsgBox (nom_fichier)

End Sub

Quelle erreur je commets ?

Par avance merci pour votre aide !

A voir également:

4 réponses

thev Messages postés 1982 Date d'inscription   Statut Membre Dernière intervention   711
 

Bonsoir,

ci-dessous code

Sub Test()
    Dim liaisons()
    Dim Ancien As String
    Dim Nouveau As String
    
    liaisons = ActiveWorkbook.LinkSources(xlExcelLinks)

    Ancien = liaisons(1)
    Nouveau = Application.GetOpenFilename(, , "Sélectionner")
    
    ActiveWorkbook.ChangeLink Name:=Ancien, NewName:=Nouveau, Type:=xlExcelLinks

End Sub

1
touroul Messages postés 509 Date d'inscription   Statut Membre Dernière intervention   16
 

Bonjour

un p'tit UP

Merciii !

0
touroul Messages postés 509 Date d'inscription   Statut Membre Dernière intervention   16
 

Bonjour

J'ai vraiment besoin de cela svp.

Voici un fichier d'exemple avec description du problème.
Un peu d'aide svp !

https://www.cjoint.com/c/MLguIX77Xjn

Merci par avance

0
touroul Messages postés 509 Date d'inscription   Statut Membre Dernière intervention   16
 

Bonjour Thev

Merci beaucoup, ça fonctionne impecc.

J'ai compris la méthode, c'est malin.

Encore merci et bonne soirée, je marque en résolu.

0