XL 2013 Ouvrir fichier source

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

coline741

XLDnaute Junior
Bonjour le forum,

Fort mari de ne pas trouver de solution simple par une petite macro sympa. Honteux et confus je vous soumets ici le problème.

Le fichier joint comporte une liste de jazzmen avec un lien pour chacun (en l'occurence, colone G ici)

Si par exemple, je sélectionne Bill Evans en G5, le lien apparait: ='E:\music1\bill evans\[Bill Evans Discography.xls]Feuil3'!$C$4574

Le but de la macro est d'ouvrir le fichier "Bill Evans Discography.xls" , à l'emplacement Feuil3'!$C$4574

C'est tout.

La feuille Macro1(non active) fonctionne toujours mais rame sur des disques externes de 3 téras ou plus.

Thank you in advance for your assistance.
 

Pièces jointes

Solution
Bonsoir,
désolé, le taf me laisse que peu de temps ...
Donc j'ai pas chargé ton fichier mais dans le code précédent (remis ci-dessous) tu "select" une plage d'un onglet sur d'une destination.

Peut-être est-ce là qu'il faut voir pour sélectionner la bonne plage au bon endroit 🙂

VB:
Sub test()
Dim Fichier$, Fich, Plage$, Onglet$, Destination As Workbook
    strQuote = Chr(34)
    Fichier = ThisWorkbook.Sheets("Feuil1").Range("G5").FormulaLocal
    Fich = Split(Fichier, "'")
    Plage = Right(Fich(1), Len(Fich(1)) - InStr(1, Fich(1), "]", vbTextCompare))
    Fich(1) = Replace(Left(Fich(1), InStr(1, Fich(1), "]", vbTextCompare) - 1), "[", "")
    Plage = Plage & Fich(2)
    Onglet = Left(Plage, InStr(1, Plage, "!"...
Bonsoir,
désolé, le taf me laisse que peu de temps ...
Donc j'ai pas chargé ton fichier mais dans le code précédent (remis ci-dessous) tu "select" une plage d'un onglet sur d'une destination.

Peut-être est-ce là qu'il faut voir pour sélectionner la bonne plage au bon endroit 🙂

VB:
Sub test()
Dim Fichier$, Fich, Plage$, Onglet$, Destination As Workbook
    strQuote = Chr(34)
    Fichier = ThisWorkbook.Sheets("Feuil1").Range("G5").FormulaLocal
    Fich = Split(Fichier, "'")
    Plage = Right(Fich(1), Len(Fich(1)) - InStr(1, Fich(1), "]", vbTextCompare))
    Fich(1) = Replace(Left(Fich(1), InStr(1, Fich(1), "]", vbTextCompare) - 1), "[", "")
    Plage = Plage & Fich(2)
    Onglet = Left(Plage, InStr(1, Plage, "!", vbTextCompare) - 1)
    Plage = Right(Fich(2), Len(Fich(2)) - 1)
    Set Destination = Workbooks.Open(Fich(1))
    With Destination
        .Sheets(Onglet).Range(Plage).Select
    End With
End Sub

A+
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD
Retour