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

Création d'un menu, barre d'outil par rapport à un fichier Excel


Sujet :

VBA Word

  1. #1
    Membre habitué
    Profil pro
    Informaticien
    Inscrit en
    Juillet 2007
    Messages
    344
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations professionnelles :
    Activité : Informaticien

    Informations forums :
    Inscription : Juillet 2007
    Messages : 344
    Points : 127
    Points
    127
    Par défaut Création d'un menu, barre d'outil par rapport à un fichier Excel
    Bonjour,

    Je vais essayer d'expliquer ma demande le plus clairement.

    J'ai un fichier Excel qui contient des données style adresse: nom, prénom, téléphone, environ 50 lignes

    J'ai un fichier Word qui contient un simple tableau qui doit contenir des personnes de contact, environ 10 par semaine, les contact sont toujours différents chaque semaine.

    Pour l'instant le fichier Excel sert de référence pour voir la liste complète des personnes disponibles, et chaque semaine, la personne qui remplit la feuille, fait des copier/coller depuis la feuille Excel par exemple.

    Le but est d'avoir une correspondance entre ces deux fichiers, une barre d'outils ou autre serait visible dans Word avec tous les noms disponibles par rapport à la feuille Excel, et quand la personne clique sur un nom, cela insère automatiquement le nom, prénom et téléphone dans le tableau Word.

    Est-il possible de faire cela sous Word/Excel? Si oui avez-vous des pistes?

    Merci d'avance

  2. #2
    Rédacteur/Modérateur

    Avatar de Heureux-oli
    Homme Profil pro
    Contrôleur d'industrie
    Inscrit en
    Février 2006
    Messages
    21 087
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 59
    Localisation : Belgique

    Informations professionnelles :
    Activité : Contrôleur d'industrie
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Février 2006
    Messages : 21 087
    Points : 42 926
    Points
    42 926
    Par défaut
    Salut,

    Peut-être une piste là : http://heureuxoli.developpez.com/off...cument-tiroir/

  3. #3
    Membre habitué
    Profil pro
    Informaticien
    Inscrit en
    Juillet 2007
    Messages
    344
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations professionnelles :
    Activité : Informaticien

    Informations forums :
    Inscription : Juillet 2007
    Messages : 344
    Points : 127
    Points
    127
    Par défaut
    Bonjour,

    Merci pour votre réponse, j'ai essayé votre lien, après avoir fait quelques tests, le fait de créer un formulaire n'est pas une bonne solution, parce tant que le formulaire est ouvert, on ne peut pas modifier le document.

    Je me suis donc tourné vers la création d'une barre d'outils personnalisée en VBA:

    Je suis arrivé à créer un simple bouton:

    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
     
    Dim BaBar As CommandBar
     
    Set BaBar = Application.CommandBars.Add("MaBarre", Position:=msoBarTop, MenuBar:=False, Temporary:=True)
     
    BaBar.Protection = msoBarNoChangeVisible
     
    With BaBar
        For i = 1 To 120
            'Instructions
            Set Btn1 = .Controls.Add(msoControlButton)
            With Btn1
                .Caption = "Bouton"
                .Style = msoButtonCaption
                .OnAction = "Macro1"
            End With
        Next
    End With
    Mais maintenant comment lié mon fichier Excel?

    Créer le nombre de bouton par rapport aux nombre d'adresse qui figurent dans le fichier Excel.

    Aussi est-il possible de donner une largeur fixe à ma barre d'outils? Et que les boutons vont automatiquement à la ligne?

    Merci

  4. #4
    Rédacteur/Modérateur

    Avatar de Heureux-oli
    Homme Profil pro
    Contrôleur d'industrie
    Inscrit en
    Février 2006
    Messages
    21 087
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 59
    Localisation : Belgique

    Informations professionnelles :
    Activité : Contrôleur d'industrie
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Février 2006
    Messages : 21 087
    Points : 42 926
    Points
    42 926
    Par défaut
    Salut,

    Merci pour votre réponse, j'ai essayé votre lien, après avoir fait quelques tests, le fait de créer un formulaire n'est pas une bonne solution, parce tant que le formulaire est ouvert, on ne peut pas modifier le document.
    Seulement si le formulaire est modal, si le formulaire n'est pas modal, on peut éditer le document avec un UserForm ouvert.

  5. #5
    Membre habitué
    Profil pro
    Informaticien
    Inscrit en
    Juillet 2007
    Messages
    344
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations professionnelles :
    Activité : Informaticien

    Informations forums :
    Inscription : Juillet 2007
    Messages : 344
    Points : 127
    Points
    127
    Par défaut
    Bonjour,

    Je reviens sur ce sujet.

    Et est-il possible de générer un formulaire non modal directement en VBA, à l'ouverture du document?

    Merci d'avance

  6. #6
    Rédacteur/Modérateur

    Avatar de Heureux-oli
    Homme Profil pro
    Contrôleur d'industrie
    Inscrit en
    Février 2006
    Messages
    21 087
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 59
    Localisation : Belgique

    Informations professionnelles :
    Activité : Contrôleur d'industrie
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Février 2006
    Messages : 21 087
    Points : 42 926
    Points
    42 926
    Par défaut
    Salut,

    Il est plus simple d'ouvrir un formulaire que de le générer, je ne suis pas certain qu'on puisse générer un formulaire.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    Sub Document_Open()
        MonUserForm.Show False
    End Sub

  7. #7
    Membre habitué
    Profil pro
    Informaticien
    Inscrit en
    Juillet 2007
    Messages
    344
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations professionnelles :
    Activité : Informaticien

    Informations forums :
    Inscription : Juillet 2007
    Messages : 344
    Points : 127
    Points
    127
    Par défaut
    Alors c'est peut-être pas la bonne solution de créer un formulaire?

    Il faut que mon formulaire soit à jour par rapport à la liste Excel.

    Avez-vous d'autres idées/solutions?

    Merci d'avance

  8. #8
    Rédacteur/Modérateur

    Avatar de Heureux-oli
    Homme Profil pro
    Contrôleur d'industrie
    Inscrit en
    Février 2006
    Messages
    21 087
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 59
    Localisation : Belgique

    Informations professionnelles :
    Activité : Contrôleur d'industrie
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Février 2006
    Messages : 21 087
    Points : 42 926
    Points
    42 926
    Par défaut
    Salut,

    Donc, ce n'est pas une génération mais une ouverture.

    Dans le tuto, on y montre comment récupérer les données depuis un fichier Excel.

  9. #9
    Membre habitué
    Profil pro
    Informaticien
    Inscrit en
    Juillet 2007
    Messages
    344
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations professionnelles :
    Activité : Informaticien

    Informations forums :
    Inscription : Juillet 2007
    Messages : 344
    Points : 127
    Points
    127
    Par défaut
    Citation Envoyé par Heureux-oli Voir le message
    Salut,

    Donc, ce n'est pas une génération mais une ouverture.

    Dans le tuto, on y montre comment récupérer les données depuis un fichier Excel.
    Bonjour,

    Je sais pas si vous avez bien compris ce que j'aimerais faire?

    Créer un formulaire dans exploitable dans Word, à partir de données stocker dans un fichier Excel.

  10. #10
    Rédacteur/Modérateur

    Avatar de Heureux-oli
    Homme Profil pro
    Contrôleur d'industrie
    Inscrit en
    Février 2006
    Messages
    21 087
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 59
    Localisation : Belgique

    Informations professionnelles :
    Activité : Contrôleur d'industrie
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Février 2006
    Messages : 21 087
    Points : 42 926
    Points
    42 926
    Par défaut
    Salut,

    Je pense que là http://heureuxoli.developpez.com/off...ent-tiroir/#L3 on utilise des données situées dans un fichier Excel au départ de Word pour pouvoir les utiliser.

Discussions similaires

  1. lancement d'un menu vba dés l'ouverture d'un fichier excel
    Par sefir dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 29/10/2007, 10h01
  2. [VB2005]Ajouter boutons dans barre d'outils par code
    Par cd090580 dans le forum Windows Forms
    Réponses: 4
    Dernier message: 14/09/2007, 18h57
  3. menu, barre d'outil et raccourcis
    Par troumad dans le forum GTK+ avec C & C++
    Réponses: 3
    Dernier message: 21/03/2007, 12h57
  4. Changer le nom par défaut du fichier excel crée
    Par pilou0013 dans le forum Access
    Réponses: 2
    Dernier message: 18/06/2006, 18h30

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