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 Access Discussion :

Ouvrir un fichier Word via bouton de commande sous Access


Sujet :

VBA Access

  1. #1
    Candidat au Club
    Homme Profil pro
    Inscrit en
    Janvier 2013
    Messages
    6
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Janvier 2013
    Messages : 6
    Points : 2
    Points
    2
    Par défaut Ouvrir un fichier Word via bouton de commande sous Access
    Bonjour,

    Après avoir parcouru les sujets qui décrivent comment ouvrir un fichier word avec access, je ne trouve toujours pas la solution à mon problème.
    Je suis débutant et j'ai les notions de base d'access.

    Voilà ce que je voudrais réaliser : j'aimerais que, lorsque l'on clique sur un boutton de commande dans un formulaire, un fichier word s'ouvre afin que je puisse l'imprimer ou le modifier.

    Dois-je passer par une macro ? Ou bien coder avec VB ?

    Merci pour vos réponses.

  2. #2
    Expert confirmé Avatar de nico84
    Homme Profil pro
    Consultant/développeur ERP
    Inscrit en
    Mai 2008
    Messages
    3 112
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Consultant/développeur ERP
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2008
    Messages : 3 112
    Points : 5 237
    Points
    5 237
    Par défaut
    Bonjour,

    La commande shell ouvre le fichier avec le programme windows par défaut :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    ShellExecute 0&, vbNullString, "monfichier.doc", vbNullString, vbNullString, vbNormalFocus

  3. #3
    Candidat au Club
    Homme Profil pro
    Inscrit en
    Janvier 2013
    Messages
    6
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Janvier 2013
    Messages : 6
    Points : 2
    Points
    2
    Par défaut
    Merci pour votre réponse.
    J'ai mis ce code dans la propriété "sur clic" du boutton avec le nom de fichier associé mais cela ne fonctionne pas. Que faire ?

  4. #4
    Expert confirmé Avatar de nico84
    Homme Profil pro
    Consultant/développeur ERP
    Inscrit en
    Mai 2008
    Messages
    3 112
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Consultant/développeur ERP
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2008
    Messages : 3 112
    Points : 5 237
    Points
    5 237
    Par défaut
    Il faut mettre ça qqpart (par exemple dans un module) :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    Public 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
    Et donc aussi ajouter la référence shell32.dll

  5. #5
    Candidat au Club
    Homme Profil pro
    Inscrit en
    Janvier 2013
    Messages
    6
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Janvier 2013
    Messages : 6
    Points : 2
    Points
    2
    Par défaut
    J'ai mis le code que vous m'avez transmis dans un module que j'ai appelé : modOpenWord.
    J'ai également rajouter la référence shell32.dll et j'ai également cocher la case "shellExtension" dans Outils\Références.
    Ceci ne fonctionne toujours pas (Oui je suis un novice sous access )



    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    Option Compare Database
     
        References.AddFromFile ("C:\WINDOWS\system32\shell32.dll")
     
        Public 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
     
    End Sub

    Autre question : comment appeler mon module d'après le code VB de mon boutton de commande ?

    Merci pour tout nico84 !

  6. #6
    Expert confirmé Avatar de nico84
    Homme Profil pro
    Consultant/développeur ERP
    Inscrit en
    Mai 2008
    Messages
    3 112
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Consultant/développeur ERP
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2008
    Messages : 3 112
    Points : 5 237
    Points
    5 237
    Par défaut
    Citation Envoyé par adri891 Voir le message
    Ceci ne fonctionne toujours pas
    Ca compile ???

    Je ne connais pas
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    References.AddFromFile ("C:\WINDOWS\system32\shell32.dll")
    J'ajoute une référence par le menu du VBA

    Par ailleurs le End Sub ne ferme rien

  7. #7
    Candidat au Club
    Homme Profil pro
    Inscrit en
    Janvier 2013
    Messages
    6
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Janvier 2013
    Messages : 6
    Points : 2
    Points
    2
    Par défaut
    Lorsque je compile, il me demande de faire une macro . Puis quand je fais exécuter, il me dit que les macros sont désactivées. Que dois-je faire ?

  8. #8
    Candidat au Club
    Homme Profil pro
    Inscrit en
    Janvier 2013
    Messages
    6
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Janvier 2013
    Messages : 6
    Points : 2
    Points
    2
    Par défaut
    En cherchant un peu, j'en ai déduit ce code ci :

    //////////////////////////////////////////////////////
    Private Sub OpenFile_Click()

    On Error GoTo Err_OpenFile_Click

    Call Shell("C:\Program Files\Microsoft Office\Office12\WINWORD.EXE", 1)

    Exit_OpenFile_Click:
    Exit Sub

    Err_OpenFile_Click:
    MsgBox Err.Description
    Resume Exit_OpenFile_Click

    End Sub
    ///////////////////////////////////////////////////////////

    Est-ce correct ? (car cela n'ouvre pas word)

  9. #9
    Candidat au Club
    Homme Profil pro
    Inscrit en
    Janvier 2013
    Messages
    6
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Janvier 2013
    Messages : 6
    Points : 2
    Points
    2
    Par défaut
    J'ai enfin trouvé les éléments de réponse : il fallait activer les macros dans les options de Word et d'access.

    Merci pour votre aide !!

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

Discussions similaires

  1. Ouvrir un fichier Word ou Excel avec un bouton VBA
    Par nounout44 dans le forum Général VBA
    Réponses: 0
    Dernier message: 22/06/2015, 10h09
  2. Ouvrir fichier Word via VBA
    Par da_latifa dans le forum VBA Access
    Réponses: 0
    Dernier message: 22/09/2013, 23h52
  3. Ouvrir un fichier word avec un bouton
    Par cuterate dans le forum VBA Access
    Réponses: 12
    Dernier message: 19/09/2008, 19h37
  4. Réponses: 8
    Dernier message: 19/09/2008, 15h54
  5. Ouvrir un fichier word via formulaire
    Par liop49 dans le forum Access
    Réponses: 10
    Dernier message: 07/09/2006, 12h13

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