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 :

aide pour ouvrir une page word [XL-2007]


Sujet :

Macros et VBA Excel

  1. #21
    Membre à l'essai
    Profil pro
    Inscrit en
    Mars 2008
    Messages
    36
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France, Charente Maritime (Poitou Charente)

    Informations forums :
    Inscription : Mars 2008
    Messages : 36
    Points : 16
    Points
    16
    Par défaut
    Bonjour

    Il faut croire que le comportement d'une version à l'autre ou Celon les réglage utilisateur peu différer.

    Chez moi j'ai bien plusieurs instance
    Et je dois être sûre que mon code soit résilient, je ne sais ni quel version d'excellente ferra tourner mon code, encore moins les réglages utilisateurs.

    J'en suis donc toujours à pouvoir pointer mon documents et ce quelque soit l'instance ou il est ouvert.

  2. #22
    Expert éminent sénior
    Homme Profil pro
    aucune
    Inscrit en
    Septembre 2011
    Messages
    8 203
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : aucune

    Informations forums :
    Inscription : Septembre 2011
    Messages : 8 203
    Points : 14 354
    Points
    14 354
    Par défaut
    Après avoir ouvert manuellement plusieurs documents, quand tu exécutes le dernier code que je t'ai fourni, quel résultat obtiens-tu ?
    Cordialement.

    Daniel

    La plus perdue de toutes les journées est celle où l'on n'a pas ri. Chamfort

  3. #23
    Membre à l'essai
    Profil pro
    Inscrit en
    Mars 2008
    Messages
    36
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France, Charente Maritime (Poitou Charente)

    Informations forums :
    Inscription : Mars 2008
    Messages : 36
    Points : 16
    Points
    16
    Par défaut
    Bonjour

    1, 2 ... Rarement le total des fichiers ouvert.
    Je suis absolument sûre de moi quand je dis que je suis multi instancié

    La routine que j'ai proposé (la seule qui fonctionne) en est la preuve : pour avoir la liste complète des fichiers ouvert je ferme une à une toute les instances ouverte. J'en ai donc plusieurs

    La msgbox de résultat de la fonction liste bien plusieurs instance avec un ou quelques fichier dans chacune.

    Cordialement.

  4. #24
    Expert éminent sénior
    Homme Profil pro
    aucune
    Inscrit en
    Septembre 2011
    Messages
    8 203
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : aucune

    Informations forums :
    Inscription : Septembre 2011
    Messages : 8 203
    Points : 14 354
    Points
    14 354
    Par défaut
    Bon, je viens de réinstaller Word 2007. J'ai ouvert manuellement 2 documents et j'ai exécuté le code suivant :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    Sub test()
    Dim WordApp As Object
    Set WordApp = GetObject(, "Word.Application")
    MsgBox WordApp.Documents.Count
    WordApp.Quit
    Set WordApp = Nothing
    End Sub
    Le message indique bien 2 documents dans l'instance. "WordApp.Quit" ferme Word et les deux documents. Ton bout de code ne prouve rien. Que tu aies une ou plusieurs instances, il réagirait pareil. La seule différence pourrait venir du système d'exploitation. Je teste avec Windows 7; et toi ?
    Cordialement.

    Daniel

    La plus perdue de toutes les journées est celle où l'on n'a pas ri. Chamfort

  5. #25
    Inactif  

    Homme Profil pro
    Développeur .NET
    Inscrit en
    Janvier 2012
    Messages
    4 904
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 67
    Localisation : Canada

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : Finance

    Informations forums :
    Inscription : Janvier 2012
    Messages : 4 904
    Points : 10 168
    Points
    10 168
    Billets dans le blog
    36
    Par défaut
    Bonjour,

    Je pensais que j'avais quelque chose pour passer en revue les différentes instances d'une même application, mais je ne l'ai pas retrouvé. Ceci dit, j'ai pondu ceci. Ce n'est pas vraiment différent de ce qui a été fait avant mais bon.

    Comme j'ai dit dans la macro, il faut ajouter la référence à Word. Le programme permet de faire ouvrir un ou plusieurs fichiers avec une nouvelle instance de Word et de les afficher dans un listbox. Une fois le fichier sélectionné dans le listbox, Word (2010) sélectionne le document, sans le rouvrir et se rend à la page 3.

    Tel qu'il est rédigé, la fermeture de l'application, ne ferme pas Word, mais cela peut se corriger. Pour le reste je vais regarder de nouveau.
    Fichiers attachés Fichiers attachés
    À ma connaissance, le seul personnage qui a été diagnostiqué comme étant allergique au mot effort. c'est Gaston Lagaffe.

    Ô Saint Excel, Grand Dieu de l'Inutile.

    Excel n'a jamais été, n'est pas et ne sera jamais un SGBD, c'est pour cela que Excel s'appelle Excel et ne s'appelle pas Access junior.

  6. #26
    Inactif  

    Homme Profil pro
    Développeur .NET
    Inscrit en
    Janvier 2012
    Messages
    4 904
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 67
    Localisation : Canada

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : Finance

    Informations forums :
    Inscription : Janvier 2012
    Messages : 4 904
    Points : 10 168
    Points
    10 168
    Billets dans le blog
    36
    Par défaut La question (très) en retard.
    Bonjour,

    Es-ce vraiment nécessaire de faire le programme dans Excel et en VBA ?

    Parce que VB.net est mieux "équipé" pour zigonner dans les processus. Tu peux télécharger gratuitement VB2012 Express pour Desktop (et même une beta de VS2013) sur le site de Microsoft.
    À ma connaissance, le seul personnage qui a été diagnostiqué comme étant allergique au mot effort. c'est Gaston Lagaffe.

    Ô Saint Excel, Grand Dieu de l'Inutile.

    Excel n'a jamais été, n'est pas et ne sera jamais un SGBD, c'est pour cela que Excel s'appelle Excel et ne s'appelle pas Access junior.

  7. #27
    Membre à l'essai
    Profil pro
    Inscrit en
    Mars 2008
    Messages
    36
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France, Charente Maritime (Poitou Charente)

    Informations forums :
    Inscription : Mars 2008
    Messages : 36
    Points : 16
    Points
    16
    Par défaut
    oui, cela etait necessaire.

    et si, ma petite routine est une preuve.
    puisqu'elle fonctionne en "tuant" les processus un a un d'excel ouvert et en listant les fichier du "nouveau dernier processus d'excel" trouvé ... si elle boucle plus d'une fois, c'est qu'il y a plus d'un processus.

    je me suis quand meme bien assuré de ce que je formulais avant de poser ma requete.
    toutefois, j'ai fini par trouver la réponse.

    je n'arrive toujours pas a lister TOUT les documents ouvert a un moment T en "passant par dessus" l"éventualité d'un multi process

    la question reste malheureusement en suspens, alors que je pense qu'elle serait pourtant particulierement utile dans bien des cas ... l'avantage d'un tel code est sa résilience. car meme si vous ne me croyez pas (ou certains) (et n'y voyez la aucun ombrage ou attaque personnelle, ce n'est absoluement pas mon envie que de froisser les personnes qui ont cherché à m'aider dans ces pages !!!) le fait est que j'ai recensé sur le wouaib d'autre complainte du meme genre que la mienne, preuve s'il en est que sur "certain" pc et chez "certaine" personne, pour X ou Y raison, plusieurs process se lancent bel et bien ... un tel code de listing serait donc "réellement" portable en toute circonstance ... donc ... resilient.
    de quoi remplacer le "code de base" proposé un peu partout, et donc visiblement pas a 100% portable en toute circonstance. dommage !!!

    toutefois, j'ai bien réglé mon probleme de base.
    la meilleur suggestion revient a clementmarcotte :

    Si tu as plusieurs fichiers d'ouverts, il y a une instruction quelque part dans VBA Word qui permet de sélectionner un document Word par son nom. Sauf horreur de ma part, parce que cela bien longtemps que je n'ai pas fait de programmation sérieuse avec Word, cela te prendrait une ligne de ce genre-là:

    Code :
    Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    appword.windows("Arthur").select ta ligne pour atteindre ta page ici
    In Fine, c'etait bien la meilleur proposition, simplement mes premiers essais avaient été des echec, parce que j'avais mal lu la doc.

    a défaut, donc, de lister les document ouvert, si on sait ce qu'on cherche, on peu au moins verrifier qu'il est ouvert et si tel est le cas, le pointer.

    la vraie syntaxe est :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    Adr = "C:\mon_doc.doc"
    Set WordApp = GetObject(Adr)
    mon erreur de base, et ce que j'avais mal compris de la documentation officielle de GetObject (malgrès un nombre de lecture rageuse -c'est peut etre ca, le probleme- incalculable), c'est que je pensais devoir additionner les deux paramètre.
    hors, apparement ...
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    Adr = "C:\mon_doc.doc"
    Set WordApp = GetObject(Adr, "Word.Application")
    => NE FONCTIONNE PAS.

    voila, en esperant que ceci pourra servir a quelqu'un, et sauf si une personne trouve un code qui permette de réellement lister tout les fichiers ouvert qui soit vraiment resilient, notament dans le cas d'un processus multiple ouvert ... je pense clore le débat.

    merci a tous, et dsl pour le retard, j'etais en déplacement pro entre temps.

+ Répondre à la discussion
Cette discussion est résolue.
Page 2 sur 2 PremièrePremière 12

Discussions similaires

  1. Genre de popup pour ouvrir une page
    Par Ylias dans le forum Général JavaScript
    Réponses: 1
    Dernier message: 08/10/2007, 09h19
  2. Réponses: 2
    Dernier message: 28/06/2007, 08h23
  3. Un 3ème bouton pour ouvrir une page
    Par philippef dans le forum Balisage (X)HTML et validation W3C
    Réponses: 1
    Dernier message: 10/11/2006, 15h36
  4. code VB pour ouvrir une page d'un formulaire
    Par marion67 dans le forum Access
    Réponses: 10
    Dernier message: 31/12/2005, 22h11
  5. [Batch] Tit prog pour ouvrir une page internet
    Par toniovitch dans le forum Windows
    Réponses: 1
    Dernier message: 17/09/2005, 16h20

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