Comment Détecter le type de cible d'un fichier Raccourci ?

Résolu/Fermé
el barto - 16 déc. 2013 à 18:20
 el barto - 23 déc. 2013 à 15:53
Bonjour,

je souhaiterais dans ma macro détecter le type de cible d'un fichier de type Raccourci.
Ex: je créer un raccourci d'un fichier Excel. Ma macro travaille sur le fichier Raccourci, comment détecter que ce fichier va s'ouvrir avec Excel ?

Je suis clair ^^ ?

Sur un fichier raccourci on ne peut pas travailler sur l'extension puisque celle-ci sera toujours .lnk

A voir également:

7 réponses

lermite222 Messages postés 8724 Date d'inscription dimanche 8 avril 2007 Statut Contributeur Dernière intervention 22 janvier 2020 1 190
Modifié par lermite222 le 23/12/2013 à 14:50
Bon, dans ce cas..
Sub ContenuRacc()
Dim Chemin As String, Cible As String, EXT As String
Dim WS, RaccName, Lier
    Chemin = "C:\Repertoire des raccourcis\" 'pas oublier le \ (slach inverse) au bout
    Set WS = CreateObject("Wscript.Shell")
    RaccName = Dir(Chemin & "*.lnk", vbNormal)
    While RaccName <> ""
        Set Lier = WS.CreateShortcut(Chemin & RaccName)
        Cible = Lier.TargetPath
        'L'extention recherchée
        EXT = Mid(Cible, InStrRev(Cible, ".") + 1)
        RaccName = Dir()
    Wend
    Set WS = Nothing
End Sub

J'ai pas testé, j'ai pas de répertoire avec des raccourcis mais j'ai testé sur le bureau et ça fonctionne.
Tu dis.
A+


Si tu te cognes à un pot et que ça sonne creux, c'est pas forcément le pot qui est vide. ;-)(Confucius)
Note: Je ne répond pas aux MP pour les questions techniques. Et ma boule de cristal est cassée .
1
lermite222 Messages postés 8724 Date d'inscription dimanche 8 avril 2007 Statut Contributeur Dernière intervention 22 janvier 2020 1 190
Modifié par lermite222 le 16/12/2013 à 18:28
Bonjour,
pour être clair... c'est pas du tout le cas.
Pourquoi travailler sur un raccourci et pas directement sur le fichier ?
Explique un peu mieux Stp.
A+
EDIT : Précise le langage employé Stp.

Si tu te cognes à un pot et que ça sonne creux, c'est pas forcément le pot qui est vide. ;-)(Confucius)
Note: Je ne répond pas aux MP pour les questions techniques. Et ma boule de cristal est cassée .
0
En fait je vais être amener à travailler sur plusieurs fichiers qui se trouve à des endroits différents. Dans un dossier qu'on va appeler Raccourcis nous trouverons les raccourcis vers ces fichiers. Ma macro va donc traiter ces fichiers que dans un seul dossier.
Le but de ma macro est juste de savoir si le fichier cible est un doc word, excel, un lien internet...
0
Pour le langage c'est du VBA
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
lermite222 Messages postés 8724 Date d'inscription dimanche 8 avril 2007 Statut Contributeur Dernière intervention 22 janvier 2020 1 190
20 déc. 2013 à 18:13
Bonjour,
Désolé pour le retard j'ai été indisponible pendant un ti temps.
Si ta question est encore d'actualité...
Pourquoi passer son temps à créer des raccourcis et ensuite passer sont temps à les décrypter ???
Serait pas plus simple de faire un fichier (classeur Excel par exemple) qui regrouperait tout les fichiers ??
Tu dis.
0
Je vois ce que tu veux dire mais ça ne me parait pas faisable.

C'est pour le boulot que je fais ça. En gros y a un chef de projet qui grâce à une application (que j'ignore) génère une arborescence de dossier, de fichiers... à chaque nouveau projet. Dans cette arborescence il y a un dossier nommé Raccourci où le chef met des raccourcis de fichiers (fichiers qui ne se trouvent pas forcément au même endroit).
De mon côté je cherche un moyen de détecter le type de ces fichiers raccourcis à l'aide d'une macro Excel (je n'ai pas d'autres moyens techniques à ma disposition). Si mon raccourci pointe vers fichiers word je le type par exemple Document texte, si il pointe vers un fichier jpg je le type image... Bref sur un fichier qui n'est pas un raccourci c'est facile, y a juste à lire l'extension. Sauf que pour un raccourci l'extension c'est .lnk donc impossible...
0
Nickel c'est ce qu'il me fallait.
En fait c'est le TargetPath qu'il me manquait.

Merci ;)
0