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 :

Impression document Word après clic sur un bouton [XL-2016]


Sujet :

Macros et VBA Excel

  1. #1
    Membre habitué Avatar de Vba14
    Homme Profil pro
    Retraité
    Inscrit en
    Janvier 2019
    Messages
    440
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 63
    Localisation : France, Calvados (Basse Normandie)

    Informations professionnelles :
    Activité : Retraité
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Janvier 2019
    Messages : 440
    Points : 147
    Points
    147
    Par défaut Impression document Word après clic sur un bouton
    Bonjour le forum,

    Avec l'aide de Menhir, j'ai créé une image qui me permet d'ouvrir un document Word en lien hypertexte.

    Maintenant, je souhaiterai que ce document soit imprimer dés son ouverture, qu'il se referme automatiquement et que je revienne à mon application Excel.

    Est-ce réalisable et comment ?

    Tout ça fait beaucoup pour ma petite tête... Alors je me permet de solliciter votre aide.

    Merci par avance

    Très amicalement


    Ps : Ou dans l'absolu, l'imprimer sans l'ouvrir
    Le savoir est le plus intellectuel des virus, dommage qu'il ne soit pas très contagieux.
    Adrien Verschaere
    Étudiant, France, 1997

  2. #2
    Membre émérite
    Avatar de pijaku
    Homme Profil pro
    Inscrit en
    Août 2010
    Messages
    1 814
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 50
    Localisation : France, Nord (Nord Pas de Calais)

    Informations forums :
    Inscription : Août 2010
    Messages : 1 814
    Points : 2 949
    Points
    2 949
    Billets dans le blog
    10
    Par défaut
    Bonjour,

    Tout document, pour être imprimé, doit être ouvert.
    Avec cette macro, l'ouverture est quasi-invisible : https://access.developpez.com/faq/?p...vers#Print_doc


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    Private Declare Function ShellExecute Lib "shell32.dll" Alias "ShellExecuteA" _
        (ByVal hwnd As Long, ByVal lpOperation As String, ByVal lpFile As String, _
        ByVal lpParameters As String, ByVal lpDirectory As String, ByVal nShowCmd As Long) As Long
     
    Sub imprimer_fichier()
    Dim Chemin As String
       Chemin = "C:\Users\" & Environ("UserName") & "\Desktop\MonFichier.docx"
    ShellExecute 0, "print", Chemin, "", "", 1
    End Sub
    Cordialement,
    Franck

  3. #3
    Membre habitué Avatar de Vba14
    Homme Profil pro
    Retraité
    Inscrit en
    Janvier 2019
    Messages
    440
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 63
    Localisation : France, Calvados (Basse Normandie)

    Informations professionnelles :
    Activité : Retraité
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Janvier 2019
    Messages : 440
    Points : 147
    Points
    147
    Par défaut
    Bonjour pijaku,

    Merci pour ta réponse.

    Ce code est à mettre dans ma procédure Excel ?

    Dois-je supprimer le lien hypertexte ?
    Le savoir est le plus intellectuel des virus, dommage qu'il ne soit pas très contagieux.
    Adrien Verschaere
    Étudiant, France, 1997

  4. #4
    Membre émérite
    Avatar de pijaku
    Homme Profil pro
    Inscrit en
    Août 2010
    Messages
    1 814
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 50
    Localisation : France, Nord (Nord Pas de Calais)

    Informations forums :
    Inscription : Août 2010
    Messages : 1 814
    Points : 2 949
    Points
    2 949
    Billets dans le blog
    10
    Par défaut
    Citation Envoyé par Vba14 Voir le message
    Ce code est à mettre dans ma procédure Excel ?
    Oui
    Citation Envoyé par Vba14 Voir le message
    Dois-je supprimer le lien hypertexte ?
    Si le but est juste d'imprimer le doc word, oui le lien hypertexte est inutile.
    Cordialement,
    Franck

  5. #5
    Membre émérite
    Avatar de pijaku
    Homme Profil pro
    Inscrit en
    Août 2010
    Messages
    1 814
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 50
    Localisation : France, Nord (Nord Pas de Calais)

    Informations forums :
    Inscription : Août 2010
    Messages : 1 814
    Points : 2 949
    Points
    2 949
    Billets dans le blog
    10
    Par défaut
    En complément, le code suivant doit être placé en entête du Module, avant toutes Sub et/ou function :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    Private Declare Function ShellExecute Lib "shell32.dll" Alias "ShellExecuteA" _
        (ByVal hwnd As Long, ByVal lpOperation As String, ByVal lpFile As String, _
        ByVal lpParameters As String, ByVal lpDirectory As String, ByVal nShowCmd As Long) As Long
    Le reste du code, dans ta procédure liée au bouton (image).
    Cordialement,
    Franck

  6. #6
    Membre habitué Avatar de Vba14
    Homme Profil pro
    Retraité
    Inscrit en
    Janvier 2019
    Messages
    440
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 63
    Localisation : France, Calvados (Basse Normandie)

    Informations professionnelles :
    Activité : Retraité
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Janvier 2019
    Messages : 440
    Points : 147
    Points
    147
    Par défaut
    Bonjour pijaku, Bonjour le forum,

    Merci pour tes explications. Voici le chemin de mon fichier

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    K:\COMMUN\ARCHIVAGE\02-Procedures\Procedure_archivage.Doc
    Si j'ai bien compris je dois remplacer la ligne en rouge dans ton code par le chemin indiqué ci-dessus ?
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    Sub imprimer_fichier()
    Dim Chemin As String
       Chemin = "C:\Users\" & Environ("UserName") & "\Desktop\MonFichier.docx"
    ShellExecute 0, "print", Chemin, "", "", 1
    End Sub
    Merci par avance pour ton aide
    Le savoir est le plus intellectuel des virus, dommage qu'il ne soit pas très contagieux.
    Adrien Verschaere
    Étudiant, France, 1997

  7. #7
    Membre habitué Avatar de Vba14
    Homme Profil pro
    Retraité
    Inscrit en
    Janvier 2019
    Messages
    440
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 63
    Localisation : France, Calvados (Basse Normandie)

    Informations professionnelles :
    Activité : Retraité
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Janvier 2019
    Messages : 440
    Points : 147
    Points
    147
    Par défaut
    Ne te donnes pas la peine de répondre, j'ai testé ta procédure et cela fonctionne très bien.
    Encore merci et bonne journée
    Très amicalement
    Le savoir est le plus intellectuel des virus, dommage qu'il ne soit pas très contagieux.
    Adrien Verschaere
    Étudiant, France, 1997

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

Discussions similaires

  1. [AC-2003] Affectation variable après clic sur un bouton.
    Par maxime350 dans le forum IHM
    Réponses: 7
    Dernier message: 20/02/2010, 17h37
  2. Formulaire, action "submit" directe après clic sur un bouton radio
    Par eLynx dans le forum Général JavaScript
    Réponses: 2
    Dernier message: 18/10/2009, 19h29
  3. [HTML] affichage d'une page après clic sur le bouton 'précédent' du navigateur
    Par val_lala dans le forum Balisage (X)HTML et validation W3C
    Réponses: 11
    Dernier message: 06/04/2008, 23h21
  4. Réponses: 3
    Dernier message: 06/03/2008, 15h15

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