IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

VBA Discussion :

Créer un raccourci vers un dossier


Sujet :

VBA

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Février 2007
    Messages
    127
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2007
    Messages : 127
    Points : 66
    Points
    66
    Par défaut Créer un raccourci vers un dossier
    Salut à tous,

    J'ai créé une petite application que j'utilise pour gérer des commandes. À chaque commande entrée, un dossier est créé en fonction des informations entrées dans le formulaire selon le schéma suivant :

    D:/Commande/Année/Client/Ref

    Pour ça, j'utilise le code suivant qui marche très bien :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    MakeSureDirectoryPathExists "D:\Commande\" & DatePart("yyyy", Me.DateCommande) & "\" & Me.Client & "\" & Me.RefCommande & "\"
    Ce que je voudrais faire maintenant, c'est qu'après la création du dossier, un raccourci vers ce même dossier soit créé dans un répertoire défini, disons "Bureau\raccourci", et que le raccourci porte seulement la réf. de la commande.

    En gros, je souhaiterais avoir dans mon répertoire "raccourcis", les raccourcis vers chaque commande selon leur référence, genre:
    2012-01
    2012-02
    2012-03
    ...

    J'ai fouiné un peu partout, mais j'ai pas trouvé comment créé le raccourci souhaité...
    Quelqu'un peut-il m'aider ?

    Merci par avance !

    Guillaume

  2. #2
    Membre expérimenté
    Avatar de Papy Turbo
    Homme Profil pro
    Développeur Office/VBA
    Inscrit en
    Mars 2004
    Messages
    822
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur Office/VBA
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mars 2004
    Messages : 822
    Points : 1 709
    Points
    1 709
    Par défaut
    Bonjour,

    je n'ai pas fouillé la FAQ ni les sources qui contiennent sûrement de quoi créer un raccourci (la honte sur moi !), mais, en bref,
    - ajoute une référence à WsShell : Windows Script Host Object Model
    Dans ta fonction,
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    Dim WshShell as IWshRuntimeLibrary.WsShell
    Dim MyShortcut as IWshRuntimeLibrary.WshShortcut
     
        Set WsSHell = New IWshRuntimeLibrary.WsShell
        Set MyShortcut = WsShell.CreateShortcut(Emplacement & "\" & NomRaccourci & ".lnk"
        With MyShortcut
            .TargetPath = "Chemin et nom de la cible" 'le dossier ou fichier à ouvrir, l'application à lancer...
            .WorkingDirectory = "Chemin de la cible"
            '.Arguments = ... 'inutile dans ton cas
            .IconLocation = "emplacement + nom de l'icône dans ton dossier 'images'"
            'et toutes autres propriétés du raccourci...
            .Save
        End With
    - Pour l'emplacement sur le bureau, tu peux faire un GetDesktopDir()... ou GetSpecialFolders...
    - Pour le supprimer, si besoin, un simple Kill...
    Développement Office, support technique, assistance, sur place (Loire atlantique, Vendée, Maine et Loire) ou à distance.

  3. #3
    Membre du Club
    Profil pro
    Inscrit en
    Février 2007
    Messages
    127
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2007
    Messages : 127
    Points : 66
    Points
    66
    Par défaut Merci !
    Merci Papy Turbo !
    Après quelques petits changements, je suis enfin arrivé à obtenir ce que je voulais. J'avais effectivement déjà vu ce fameux WshShell, mais je n'avais jamais réussi à le faire marcher comme je voulais.

    Encore merci !
    Guillaume

  4. #4
    Membre expérimenté
    Avatar de Papy Turbo
    Homme Profil pro
    Développeur Office/VBA
    Inscrit en
    Mars 2004
    Messages
    822
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur Office/VBA
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mars 2004
    Messages : 822
    Points : 1 709
    Points
    1 709
    Par défaut
    , merci, Flush : faute de frappe dans le Dim ci-dessus, remplacer [Dim WshShell] par [Dim WsShell] (ou l'inverse, pourvu que la variable ait le nom déclaré ! )
    Citation Envoyé par Papy Turbo Voir le message
    - ajoute une référence à WsShell : Windows Script Host Object Model
    Dans ta fonction,
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    Dim WsShell as IWshRuntimeLibrary.WsShell
    Dim MyShortcut as IWshRuntimeLibrary.WshShortcut
     
        Set WsSHell = New IWshRuntimeLibrary.WsShell
        Set MyShortcut = WsShell.CreateShortcut(Emplacement & "\" & NomRaccourci & ".lnk"
        With MyShortcut
            .TargetPath = "Chemin et nom de la cible" 'le dossier ou fichier à ouvrir, l'application à lancer...
            .WorkingDirectory = "Chemin de la cible"
            '.Arguments = ... 'inutile dans ton cas
            .IconLocation = "emplacement + nom de l'icône dans ton dossier 'images', dans un .exe, etc."
            'et toutes autres propriétés du raccourci...
            .Save
        End With
    - Pour l'emplacement sur le bureau, tu peux faire un GetDesktopDir()... ou GetSpecialFolders...
    - Pour le supprimer, si besoin, un simple Kill...
    Bonnes fêtes à tous...
    Développement Office, support technique, assistance, sur place (Loire atlantique, Vendée, Maine et Loire) ou à distance.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Créer un raccourci vers un dossier
    Par krhyme dans le forum VBScript
    Réponses: 3
    Dernier message: 19/03/2008, 15h43
  2. raccourci vers un dossier
    Par Yves2507 dans le forum Access
    Réponses: 2
    Dernier message: 13/09/2006, 17h58
  3. Réponses: 1
    Dernier message: 19/06/2006, 11h24
  4. Est-il possible de crer un raccourci vers un reperoire ???
    Par Florina dans le forum Shell et commandes GNU
    Réponses: 2
    Dernier message: 13/12/2005, 10h33
  5. Créer un raccourci vers un logiciel et un fichier
    Par romram dans le forum Autres Logiciels
    Réponses: 3
    Dernier message: 12/05/2005, 16h32

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo