Lien vers un fichier dont le nom contient le texte d'une cellule

Fermé
Diskoo Messages postés 3 Date d'inscription lundi 22 mai 2017 Statut Membre Dernière intervention 23 mai 2017 - 22 mai 2017 à 16:34
Diskoo Messages postés 3 Date d'inscription lundi 22 mai 2017 Statut Membre Dernière intervention 23 mai 2017 - 23 mai 2017 à 09:39
Bonjour,

Malgré de nombreux topics qui semblent s'approcher de prêt de mon cas, je ne trouve pas la réponse à ma question, alors je fais appel à vous.
Voici mon problème :

Dans un dossier D j'ai des fichiers F000, F001, etc...
Dans un Excel j'ai en colonne A dès numéros : 000, 001, etc...
J'aimerai dans ma colonne B, via une macro, insérer un lien vers le fichier de mon dossier D dont le nom contient le numéro contenu dans la cellule de ma colonne A correspondante.

J'ai essayé d'utiliser ChDir et Dir(*. xls) pour parcourir mes fichiers et un If fichier = "*range(Ai).value*" pour sélectionner la cible de mon lien mais Excel crash sans me donner de piste pour corriger.

Voilà, si vous avez une idée... :)

Merci d'avance !

1 réponse

Patrice33740 Messages postés 8556 Date d'inscription dimanche 13 juin 2010 Statut Membre Dernière intervention 2 mars 2023 1 779
22 mai 2017 à 16:43
Bonjour,

Pourquoi VBA ?
Il suffit d'une formule du style :
=LIEN_HYPERTEXTE("C:/MonDossier/MonSousDossier/" & "F" & A1; "Fichier F" & A1) 

1
Diskoo Messages postés 3 Date d'inscription lundi 22 mai 2017 Statut Membre Dernière intervention 23 mai 2017
22 mai 2017 à 17:00
Oui je voulais dire éventuellement avec une macro mais sans c'est aussi bien.
OK merci je vais essayer ça. Mais si par exemple j'ai pas que des F en suffixe ça marchera quand même ce genre de formule avec une * par exemple ?
0
Patrice33740 Messages postés 8556 Date d'inscription dimanche 13 juin 2010 Statut Membre Dernière intervention 2 mars 2023 1 779
22 mai 2017 à 17:38
Non, il faut connaître le nom du fichier.

En VBA au lieu du = mets un like
0
Diskoo Messages postés 3 Date d'inscription lundi 22 mai 2017 Statut Membre Dernière intervention 23 mai 2017
Modifié le 23 mai 2017 à 09:40
Alors, j'ai fais des essais et ça ne marche toujours pas. Donc je vais apporter quelques précision parce qu'il est vrai que j'ai omis certains détails :
Les fichiers dans mon dossier portent un nom qui va plus ressembler à XXX - 1234 - YYYY.xls
Je peux uniquement récupérer le "1234" dans ma colonne A, et j'aimerai avoir un bouton ou un lien dans ma colonne B qui va fouiller dans mon dossier pour ouvrir le seul fichier contenant 1234 dans son nom. XXX et YYYY étant des suites de caractères inconnues.

Voilà le code que j'ai testé, juste pour une ligne (je rajouterai ma boucle for ensuite) :

Sub Lien()
Dim Ref As ThisWorkbook
Dim rep As String, fish As String
Set rep = "\\DISK\Dossier\"
ChDir rep
fish = Dir("*. xls")
Do While fichier <> ""
If fichier Like "*Range(A1).Value*" Then
Workbooks.Open fichier
End If
Loop
End Sub

Excel crash à chaque fois...
0