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 :

Fermeture d'adobe reader 9 depuis excel vba


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre habitué
    Homme Profil pro
    Gestionnaire de parc micro-informatique
    Inscrit en
    Décembre 2011
    Messages
    8
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Gestionnaire de parc micro-informatique
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Décembre 2011
    Messages : 8
    Par défaut Fermeture d'adobe reader 9 depuis excel vba
    Bonjour,
    Malgré des recherches sur le forum, je ne trouve pas a solution à mon problème.
    Je travail depuis une macro d'un fichier excel 2003 qui ouvre un fichier PDF, l'imprime et revient sur le fichier excel en cours.
    Cependant, il ne ferme pas adobe reader 9 et laisse la fenêtre ouverte.
    Ci-joint le code ou il manque incontestablement la ligne de commande qui devrait fermer adobe reader 9.

    D'avance, je vous remercie.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    Sub fax()
    Dim oApp As Object
    Dim num, cimp
    Range("N2").Select
    num = ActiveCell
    cimp = Range("Q" & num).Value
    Dim NomFichier As String
    Dim x As Long
    x = FindWindow("XLMAIN", Application.Caption)
    NomFichier = cimp
    ShellExecute x, "print", NomFichier, "", "", 1
    End Sub

    Cordialement.

  2. #2
    Expert confirmé Avatar de jfontaine
    Homme Profil pro
    Contrôleur de Gestion
    Inscrit en
    Juin 2006
    Messages
    4 756
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 51
    Localisation : France, Sarthe (Pays de la Loire)

    Informations professionnelles :
    Activité : Contrôleur de Gestion

    Informations forums :
    Inscription : Juin 2006
    Messages : 4 756
    Par défaut
    Bonjour,

    A essayer. (je n'ai pas testé)

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    Private Declare Function SendMessage Lib "user32.dll" Alias "SendMessageA" (ByVal hwnd As Long, ByVal wMsg As Long, ByVal wParam As Long, ByRef lParam As Any) As Long Sub fax() Dim oApp As Object Dim num, cimp Range("N2").Select num = ActiveCell cimp = Range("Q" & num).Value Dim NomFichier As String Dim x As Long x = FindWindow("XLMAIN", Application.Caption) NomFichier = cimp ShellExecute x, "print", NomFichier, "", "", 1 SendMessage x , WM_CLOSE, 0&, 0&. End Sub
    a essayer aussi la simulation de ALT + F4

  3. #3
    Membre habitué
    Homme Profil pro
    Gestionnaire de parc micro-informatique
    Inscrit en
    Décembre 2011
    Messages
    8
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Gestionnaire de parc micro-informatique
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Décembre 2011
    Messages : 8
    Par défaut
    bonjour Jérôme.
    Tout d'abord merci pour votre réponse.
    Cependant, le code ne fonctionne pas avec le
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    SendMessage x, "WM_CLOSE, 0&, 0&"
    .
    Il me précise une erreur de compilation : Sub ou fonction non définie pour le SendMessage.
    En ce qui concerne le code , aucune action n'est réalisée sur la fermeture d'adobe reader 9 .

    Je doit très certainement oublier quelque chose et d'avance je vous remercie de votre aide.
    Cordialement.


    Régixel

  4. #4
    Expert éminent Avatar de Menhir
    Homme Profil pro
    Ingénieur
    Inscrit en
    Juin 2007
    Messages
    16 037
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Finistère (Bretagne)

    Informations professionnelles :
    Activité : Ingénieur
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2007
    Messages : 16 037
    Par défaut
    A ta place, j'essayerai de piloter ça en utilisant les objets Acrobate Reader plutôt que des ShellExecute.

    Dans les outils > Référence , tu coches :
    * Adobe Acrobat Browser Control
    * Adobe Acrobat Type Library

    Ensuite, tu peux utiliser l'explorateur d'objets pour aller regarder les objets disponibles dans ces trois librairies.
    Entre autre, je remarque que l'objet AcroApp dispose de l'objet Exit. Ca doit pouvoir résoudre ton problème.

  5. #5
    Expert confirmé
    Avatar de kiki29
    Homme Profil pro
    ex Observeur CGG / Analyste prog.
    Inscrit en
    Juin 2006
    Messages
    6 132
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Finistère (Bretagne)

    Informations professionnelles :
    Activité : ex Observeur CGG / Analyste prog.

    Informations forums :
    Inscription : Juin 2006
    Messages : 6 132
    Par défaut
    Salut,
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    Private Sub KillAcrobatReader()
    Dim RetVal As Long
        RetVal = Shell("Taskkill /im AcroRd32.exe /f", 0)
    End Sub

  6. #6
    Membre habitué
    Homme Profil pro
    Gestionnaire de parc micro-informatique
    Inscrit en
    Décembre 2011
    Messages
    8
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Gestionnaire de parc micro-informatique
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Décembre 2011
    Messages : 8
    Par défaut
    Bonjour,
    Je fais suite à vos dernière proposition, cependant, mes compétences ne me permettent pas de remédier au problème.
    J'ai bien activé les références Adobe Acrobat Browser control type ainsi que Adobe Acrobat 9.0 Type library, cependant, je ne trouve pas le code à inscrire.
    Je suis encore débutant dans ce domaine et certaines choses m’échappent encore.
    Je m'en remet à vous pour une aide car je ne trouve pas.
    Cordialement.
    Régixel

  7. #7
    Expert éminent
    Avatar de Marc-L
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Avril 2013
    Messages
    9 468
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2013
    Messages : 9 468
    Par défaut

    Bonjour,

    sachant que la solution du post #2 fonctionne avec la ligne Declare SendMessage et les bons paramètres …

    Manque dans le code de jfontaine la déclaration de la fonction FindWindow
    ainsi que l'affectation de la valeur de WM_CLOSE (&H10 ?) !

    Désolé je n'ai rien sous le coude, donc effectuer une recherche dans les discussions de ce forum …

    Et le post #5 (à part que c'est un Variant Double qui est renvoyé …) ? Simple pourtant !

Discussions similaires

  1. Chercher et ouvrir fichier depuis Excel VBA
    Par hofstra dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 07/09/2010, 11h48
  2. connection AS400 depuis Excel Vba
    Par NATOU2 dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 24/11/2008, 10h35
  3. Appeler une procédure stockée depuis Excel/VBA
    Par _Nimy_ dans le forum InterBase
    Réponses: 4
    Dernier message: 17/04/2008, 11h17
  4. Supprimer un tableau Powerpoint (PPT) depuis Excel VBA
    Par pontoise dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 02/03/2008, 19h01
  5. Question sur accès fichier word depuis excel (VBA)
    Par jerome.grange dans le forum VBA Word
    Réponses: 6
    Dernier message: 22/09/2006, 17h34

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