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

Macros et VBA Excel Discussion :

Macro Excel - Fonction Shell


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Octobre 2015
    Messages
    7
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 31
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Octobre 2015
    Messages : 7
    Par défaut Macro Excel - Fonction Shell
    Bonjour,

    Je suis en train de lier une macro à mon bouton excel, je souhaite que celui-ci ouvre un fichier dans un répertoire donné.

    Je ne sais pas pourquoi celui-ci ne fonctionne pas, j'ai consulté plusieurs sujets sur Shell mais aucun n'est pleinement satisfaisant quand à son utilisation.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    Sub Bouton_Clic()
    chemin = "\\drst\docs\"
    ligne = ActiveCell.Row
     
    FichierCode = Replace(Replace(Cells(ligne, "B"), " ", ""), ".", "") & Cells(ligne, "A") & ".pdf"
     
    Shell "C:\Program Files\Adobe\Reader 11.0\Reader\AcroRd32.exe " & chemin & FichierCode, vbNormalFocus
     
    End Sub
    La variable "FichierCode" récupère le nom du fichier dans le répertoire (en gros ça ressort correctement son nom en : xxx.pdf)

    Le problème vient de Shell, celui-ci ne récupère pas le fichier et me dit : "Erreur execution "53" : Fichier introuvable"

    Mon problème vient sûrement de la mauvaise utilisation de parenthèses ou guillemets mais aucun site ne montre un format unique pour Shell

    Merci de vos réponses.

    Cordialement.

  2. #2
    Membre Expert
    Homme Profil pro
    PAO
    Inscrit en
    Octobre 2014
    Messages
    2 576
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : PAO
    Secteur : Communication - Médias

    Informations forums :
    Inscription : Octobre 2014
    Messages : 2 576
    Par défaut
    Bonjour,

    je ne suis pas spécialiste du shell dans windows, mais je pense que tu devrais commencer d'abord par tester ton résultat via l'invite de commande
    afin d'avoir la bonne écriture, puis base toi sur cette réponse donné dans le forum :https://www.developpez.net/forums/d3...ommande-shell/

    fais savoir ce qu'il en est stp
    Cordialement
    Ryu

    La connaissance s’acquiert par l’expérience, tout le reste n’est que de l’information. – Albert Einstein

    Pensez à la Balise [ CODE][/CODE ] - à utiliser via le bouton # => Exemple

    Une fois votre problème solutionné pensez à mettre :resolu: en n'oubliant pas d'indiquer qu'elle est la solution finale choisie ;)

  3. #3
    Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Octobre 2015
    Messages
    7
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 31
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Octobre 2015
    Messages : 7
    Par défaut
    Toujours un problème au niveau de ce Shell

    Quand je change un truc, ça me met problème de séparateur " ou ) . Du coup doit y avoir un bête oubli ou une mauvaise synthaxe dans la formulation de Shell

  4. #4
    Inactif  

    Homme Profil pro
    cuisiniste
    Inscrit en
    Avril 2009
    Messages
    15 374
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : cuisiniste
    Secteur : Bâtiment

    Informations forums :
    Inscription : Avril 2009
    Messages : 15 374
    Billets dans le blog
    8
    Par défaut re
    bonsoir
    que donne ceci dans le debug
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    Sub Bouton_Clic()
    chemin = "\\drst\docs\"
    ligne = ActiveCell.Row
     
    FichierCode = Replace(Replace(Cells(ligne, "B"), " ", ""), ".", "") & Cells(ligne, "A") & ".pdf"
     
    'Shell "C:\Program Files\Adobe\Reader 11.0\Reader\AcroRd32.exe " & chemin & FichierCode, vbNormalFocus
    
    debug.print chemin & FichierCode
    end sub
    c'est quoi ce double slashs a chemin ??????
    mes fichiers dans les contributions:
    mail avec CDO en vba et mail avec CDO en vbs dans un HTA
    survol des bouton dans userform
    prendre un cliché d'un range

    si ton problème est résolu n'oublie pas de pointer : : ça peut servir aux autres
    et n'oublie pas de voter

  5. #5
    Invité
    Invité(e)
    Par défaut
    Bonsoir,

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <span style="font-family: monospace; padding: 2px; background: #ddd; display: inline-block"> shell chr<span class="br0">(</span><span style="color: #cc66cc;">34</span><span class="br0">)</span> & Environ<span class="br0">(</span><span style="color: #FF0000;">"programfiles"</span><span class="br0">)</span> & <span style="color: #FF0000;">"\Adobe\Reader 11.0\Reader\AcroRd32.exe"</span> & chr<span class="br0">(</span><span style="color: #cc66cc;">34</span><span class="br0">)</span> & chr<span class="br0">(</span><span style="color: #cc66cc;">34</span><span class="br0">)</span> &<span style="color: #FF0000;">"fichier.pdf"</span>  & chr<span class="br0">(</span><span style="color: #cc66cc;">34</span><span class="br0">)</span></span>

  6. #6
    Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Octobre 2015
    Messages
    7
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 31
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Octobre 2015
    Messages : 7
    Par défaut
    Bonjour,

    Merci maintenant Adobe se lance ! Mais n'arrive toujours pas à trouver mon fichier. Je pense que c'est parce qu'on a pas renseigné son emplacement dans Shell (& chemin).

    EDIT : problème résolu voici la dernière ligne de code :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Shell Chr(34) & Environ("programfiles") & "\Adobe\Reader 11.0\Reader\AcroRd32.exe" & Chr(34) & Chr(34) & chemin & FichierCode & Chr(34)
    Merci aux différents participants !

    Bonne continuation

  7. #7
    Membre Expert
    Homme Profil pro
    PAO
    Inscrit en
    Octobre 2014
    Messages
    2 576
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : PAO
    Secteur : Communication - Médias

    Informations forums :
    Inscription : Octobre 2014
    Messages : 2 576
    Par défaut
    Salut,
    Il manque chemin (PS : pourquoi double slash dans chemin ? J'ai pas le souvenir de chemin écris avec "\\", mais je peux me tromper)
    Je pense que ça doit être comme cela :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    shell chr(34) & Environ("programfiles") & "\Adobe\Reader 11.0\Reader\AcroRd32.exe" & chr(34) & chemin & chr(34) &"fichier.pdf" & chr(34)
    Teste et dis moi ce qu'il en est …

    Edit : petite correction
    Cordialement
    Ryu

    La connaissance s’acquiert par l’expérience, tout le reste n’est que de l’information. – Albert Einstein

    Pensez à la Balise [ CODE][/CODE ] - à utiliser via le bouton # => Exemple

    Une fois votre problème solutionné pensez à mettre :resolu: en n'oubliant pas d'indiquer qu'elle est la solution finale choisie ;)

  8. #8
    Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Octobre 2015
    Messages
    7
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 31
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Octobre 2015
    Messages : 7
    Par défaut
    Citation Envoyé par RyuAutodidacte Voir le message
    Salut,
    Il manque chemin (PS : pourquoi double slash dans chemin ? J'ai pas le souvenir de chemin écris avec "//", mais je peux me tromper)
    Je pense que ça doit être comme cela :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    shell chr(34) & Environ("programfiles") & "\Adobe\Reader 11.0\Reader\AcroRd32.exe" & chr(34) & chemin & chr(34) &"fichier.pdf" & chr(34)
    Teste et dis moi ce qu'il en est …
    Ouép cela fonctionne aussi !

    Pour le double slash je ne sais pas c'est l'emplacement de la base que l'on m'a donné. Sache qu'en tout cas quand j'en retire un cela ne marche plus donc il doit forcément être utile

  9. #9
    Invité
    Invité(e)
    Par défaut
    Bonjour,

    Dans mes vagues souvenir de cours réseau, je crois que le double \\ permet d'accéder un autre ordinateur sur un réseau Windows mais je ne suis absolument pas certains de cette affirmation !

  10. #10
    Invité
    Invité(e)
    Par défaut
    Bonjour,
    \\192.168.1.1\rep

    \\MonServeur

Discussions similaires

  1. Macro excel fonction rechercheV
    Par ferdi182 dans le forum Macros et VBA Excel
    Réponses: 4
    Dernier message: 30/01/2017, 16h28
  2. [XL-2007] Macro Excel copier cellule en fonction de cellule indentique dans une colonne
    Par stephane12 dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 04/03/2014, 06h51
  3. Macro Excel: Masquer ligne en fonction
    Par henrynv dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 29/06/2012, 17h38
  4. [XL-2003] Comment utiliser les fonctions ESSBASE dans une macro excel ?
    Par kharon_rp dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 08/04/2010, 14h17
  5. [Macro Excel] Fonction qui calcule une formule dans une cellule
    Par Enthau dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 21/07/2008, 16h31

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