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 :

Petit problème d'ordre d'affichage entre Excel et AutoCAD


Sujet :

Macros et VBA Excel

  1. #1
    Membre habitué Avatar de DenisHen
    Homme Profil pro
    Dessinateur / projeteur
    Inscrit en
    Novembre 2013
    Messages
    384
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 52
    Localisation : France, Yonne (Bourgogne)

    Informations professionnelles :
    Activité : Dessinateur / projeteur
    Secteur : Bâtiment Travaux Publics

    Informations forums :
    Inscription : Novembre 2013
    Messages : 384
    Points : 198
    Points
    198
    Par défaut Petit problème d'ordre d'affichage entre Excel et AutoCAD
    Bonjour à tous,

    Voilà, j'ai fais une macro qui dessine dans un logiciel appelé AutoCAD. Tout fonctionne très bien, au lancement de la macro, AutoCAD passe bien au premier plan et on voit "progresser" le dessin.

    Mais lorsqu'Excel affiche une MsgBox ou une InputBox, Excel reste en arrière plan, sans montrer sa fenêtre...

    J'aimerai juste savoir comment faire passer Excel ou juste le MsgBox au premier plan...

    Merci à tous et bonne journée...

    Denis...
    Windows 7, 8 et 10 / Debian / RaspBian / AutoCAD 3D 2023

    Sur terre, il y a 10 types de personnes, celles qui comptent en binaire et les autres (developpez.net).
    Davantage d'avantages, avantagent davantage (Bobby Lapointe).
    La connaissance s'accroît quand on la partage (Socrate).
    Tant va la cruche à l'eau que l'habit n'amasse pas mousse. (Moi)
    Un clavier azerty en vaut deux (developpez.net).

  2. #2
    Expert éminent sénior 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
    Points : 32 866
    Points
    32 866
    Par défaut
    As-tu essayé de faire avec ta MsgBox un simple
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Windows("MonFichier").Activate
    Tu peux aussi tenter :
    Merci de cliquer sur pour chaque message ayant aidé puis sur pour clore cette discussion.

  3. #3
    Membre habitué Avatar de DenisHen
    Homme Profil pro
    Dessinateur / projeteur
    Inscrit en
    Novembre 2013
    Messages
    384
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 52
    Localisation : France, Yonne (Bourgogne)

    Informations professionnelles :
    Activité : Dessinateur / projeteur
    Secteur : Bâtiment Travaux Publics

    Informations forums :
    Inscription : Novembre 2013
    Messages : 384
    Points : 198
    Points
    198
    Par défaut
    Bonjour Menhir et merci de m'aider.

    Mais aucune de tes deux propositions ne fonctionnent.

    J'ai juste Excel qui clignote dans le barre des taches mais le "focus" reste sur AutoCAD...

    J'ai aussi essayé :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Windows(NomFichier).Visible = True
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Windows(NomFichier).OnWindow = True
    Même résultat...

    Denis...
    Windows 7, 8 et 10 / Debian / RaspBian / AutoCAD 3D 2023

    Sur terre, il y a 10 types de personnes, celles qui comptent en binaire et les autres (developpez.net).
    Davantage d'avantages, avantagent davantage (Bobby Lapointe).
    La connaissance s'accroît quand on la partage (Socrate).
    Tant va la cruche à l'eau que l'habit n'amasse pas mousse. (Moi)
    Un clavier azerty en vaut deux (developpez.net).

  4. #4
    Expert éminent sénior 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
    Points : 32 866
    Points
    32 866
    Par défaut
    Tu as mis ça avant ou après ta MsgBox ?
    Merci de cliquer sur pour chaque message ayant aidé puis sur pour clore cette discussion.

  5. #5
    Expert éminent sénior 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
    Points : 32 866
    Points
    32 866
    Par défaut
    Tu peux aussi essayer
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    Application.WindowState = xlMinimized
    Application.WindowState = xlNormal
    Autre possibilité
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Application.UserControl = True
    Tu n'aurais pas mis dans ton code des instruction pour empêcher le rafraichissement d'Excel ou des trucs dans le genre ?
    Merci de cliquer sur pour chaque message ayant aidé puis sur pour clore cette discussion.

  6. #6
    Membre habitué Avatar de DenisHen
    Homme Profil pro
    Dessinateur / projeteur
    Inscrit en
    Novembre 2013
    Messages
    384
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 52
    Localisation : France, Yonne (Bourgogne)

    Informations professionnelles :
    Activité : Dessinateur / projeteur
    Secteur : Bâtiment Travaux Publics

    Informations forums :
    Inscription : Novembre 2013
    Messages : 384
    Points : 198
    Points
    198
    Par défaut
    Merci pour ton aide Menhir...

    Je mets tes propositions avant ma MsgBox...

    Rien ne fonctionne... Toujours le même clignotement dans la barre des taches...
    Windows 7, 8 et 10 / Debian / RaspBian / AutoCAD 3D 2023

    Sur terre, il y a 10 types de personnes, celles qui comptent en binaire et les autres (developpez.net).
    Davantage d'avantages, avantagent davantage (Bobby Lapointe).
    La connaissance s'accroît quand on la partage (Socrate).
    Tant va la cruche à l'eau que l'habit n'amasse pas mousse. (Moi)
    Un clavier azerty en vaut deux (developpez.net).

  7. #7
    Expert éminent sénior 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
    Points : 32 866
    Points
    32 866
    Par défaut
    L'application qui lance la macro, est-ce AutoCAD ou Excel ?
    Merci de cliquer sur pour chaque message ayant aidé puis sur pour clore cette discussion.

  8. #8
    Membre habitué Avatar de DenisHen
    Homme Profil pro
    Dessinateur / projeteur
    Inscrit en
    Novembre 2013
    Messages
    384
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 52
    Localisation : France, Yonne (Bourgogne)

    Informations professionnelles :
    Activité : Dessinateur / projeteur
    Secteur : Bâtiment Travaux Publics

    Informations forums :
    Inscription : Novembre 2013
    Messages : 384
    Points : 198
    Points
    198
    Par défaut
    L'application est bien Excel, En gros, la macro :
    - lance AutoCAD s'il n'est pas lancé,
    - ouvre un nouveau document AutoCAD,
    - dessine des points et des textes s'il y a lieu...

    Les points (2D ou 3D) sont dans un calque séparé. S'il n'y a pas de nom de calque dans la bonne cellule du classeur, j'ai une MsgBox qui dit qu"il n'y a pas de nom au calque des points et Exit Sub...

    Dons, je clique sur une commande dans mon ruban sous Excel, AutoCAD prend la main et Excel affiche une MsgBox "derrière" AutoCAD...

    C'est pour celà que j'aimerai refaire passer Excel au premier plan, pour voir cette MsgBox...
    Windows 7, 8 et 10 / Debian / RaspBian / AutoCAD 3D 2023

    Sur terre, il y a 10 types de personnes, celles qui comptent en binaire et les autres (developpez.net).
    Davantage d'avantages, avantagent davantage (Bobby Lapointe).
    La connaissance s'accroît quand on la partage (Socrate).
    Tant va la cruche à l'eau que l'habit n'amasse pas mousse. (Moi)
    Un clavier azerty en vaut deux (developpez.net).

  9. #9
    Invité
    Invité(e)
    Par défaut
    bonjour,
    je n'ai pas encore trouvé toute l’arborescence, mais juste à titre de piste; l’idée est d'executer les commande Excel dans le projet AutoCad, ainsi les message ne sont pas masqués par autocad car il émane de lui!

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    ObjAutocadApplication.ACADProject.VBA.MsgBox "toto"
    je recherche si cette solution est possible mais je la donne en pâture à plusieur on est plus fort!

  10. #10
    Expert éminent sénior 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
    Points : 32 866
    Points
    32 866
    Par défaut
    J'avais songé aussi à la commande qui permet de simuler une frappe au clavier (mais comme j'évite de l'utiliser, j'ai oublié son nom et je n'arrive pas à le retrouver) pour simuler l'appui sur Alt+Tab pour changer d'application.
    Merci de cliquer sur pour chaque message ayant aidé puis sur pour clore cette discussion.

  11. #11
    Membre habitué Avatar de DenisHen
    Homme Profil pro
    Dessinateur / projeteur
    Inscrit en
    Novembre 2013
    Messages
    384
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 52
    Localisation : France, Yonne (Bourgogne)

    Informations professionnelles :
    Activité : Dessinateur / projeteur
    Secteur : Bâtiment Travaux Publics

    Informations forums :
    Inscription : Novembre 2013
    Messages : 384
    Points : 198
    Points
    198
    Par défaut
    Merci à vous deux pour votre aide...

    Bon, je n'ai pas réussi à adapter la proposition de rdurupt, en fait, dans mes déclaration, j'ai ça :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
        Dim AcadApp As AcadApplication
        Dim DocAutoCad As Object
    Et là our j'ai mon MsgBox :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
            If Calque = "" Then MsgBox "Le nom du calque des ""Points XY"" n'est pas défini", vbOKOnly, "Attention...": Exit Sub
    Windows 7, 8 et 10 / Debian / RaspBian / AutoCAD 3D 2023

    Sur terre, il y a 10 types de personnes, celles qui comptent en binaire et les autres (developpez.net).
    Davantage d'avantages, avantagent davantage (Bobby Lapointe).
    La connaissance s'accroît quand on la partage (Socrate).
    Tant va la cruche à l'eau que l'habit n'amasse pas mousse. (Moi)
    Un clavier azerty en vaut deux (developpez.net).

Discussions similaires

  1. Réponses: 6
    Dernier message: 14/04/2010, 21h31
  2. [PictureBox]Problème d'ordre d'affichage
    Par volt999 dans le forum Windows Forms
    Réponses: 6
    Dernier message: 03/12/2009, 09h50
  3. Affichage entre Excel 2000 & 2003
    Par Fred72 dans le forum Excel
    Réponses: 2
    Dernier message: 11/12/2007, 13h00
  4. Réponses: 2
    Dernier message: 25/08/2006, 19h49
  5. Réponses: 6
    Dernier message: 21/07/2006, 09h18

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