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

Excel Discussion :

Dialogue avec fichier Solidworks 2017 [XL-2010]


Sujet :

Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Inscrit en
    Avril 2010
    Messages
    93
    Détails du profil
    Informations forums :
    Inscription : Avril 2010
    Messages : 93
    Par défaut Dialogue avec fichier Solidworks 2017
    Bonjour,

    Je souhaite realiser un fichier de configuration des assemblages SoliWorks dans lequel moi et mes collegues n'aurais qu'a choisir, pour chaque categorie, l'optionm choisie par le client.

    Je pensais a le faire de la sorte:
    Un fichier Excel dans lequel plusieurs listes deroulantes nous permettraient de choisir les differentes options (jusque la rien de bien complex) une fois que toutes les categories ont ete choisies par l'utilisateur, il clique sur un bouton, une UserForm s'ouvre et lui demande le nom du fichier a enregistrer ainsi que son chemin, ensuite la macro Excel ouvre un fichier SoliWorks deja cree (prevu pour ce "configurateur"), lance une macro de ce fichier SolidWorks et remplace toutes les pieces de cet assemblage par celle selectionnee par l'utilisateur dans le fichier Excel.
    Une fois tout les remplacement faits, le fichier SolidWorks s'enregistre a l'endroit souhaite par l'utilisateur sous le nom qu'il aura donne.

    La partie macro sous SolidWorks, remplacement des pieces, ne me pose pas de problem pour l'instant.

    Je sais comment ouvrir le fichier SolidWorks depuis Excel:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    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
     
    Sub test()
     
    rep = ShellExecute(0, "open", "\\NTSERVER1\Company2\Engineering\DRAWING OFFICE\MACHINE BUILD TABLE\ASSY TEST.SLDASM", vbNullString, vbNullString, 5)
     
    End Sub
    Mais il me reste a savoir:
    - comment lancer la macro SolidWorks depuis la macro Excel (apres l'ouverture du fichier SolidWorks bien entendu)
    - comment "transferer" des variables entre Excel et SolidWorks

    Je m'explique pour ce qui est des variables. Plusieurs donnees (les noms des assemblages a remplasser, le nom du fichier final ainsi que son chemin de sauvegarde) seront utilisees par la macro SolidWorks mais seront entrees dans le fichier Excel (Valeurs dans cellules ou valeur dans un Text Field d'une UserForm). C'est pourquoi je pensais a envoyer toute les variables de Excel a Solidworks apres le lancement de la macro SoliWorks.

    J'espere ne pas avoir ete trop brouillon dans l'explication...

    Merci d'avance

    Yves

    P.S: j'ecris depuis un clavier QWERTY donc je m'excuse pour les accents manquants...

  2. #2
    Expert éminent 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
    Par défaut
    Citation Envoyé par yvespi Voir le message
    il clique sur un bouton, une UserForm s'ouvre et lui demande le nom du fichier a enregistrer ainsi que son chemin
    Il serait plus judicieux d'utiliser ceci : https://msdn.microsoft.com/fr-fr/lib.../ff195734.aspx

    ensuite la macro Excel ouvre un fichier SoliWorks deja cree (prevu pour ce "configurateur"), lance une macro de ce fichier SolidWorks et remplace toutes les pieces de cet assemblage par celle selectionnee par l'utilisateur dans le fichier Excel.
    Une fois tout les remplacement faits, le fichier SolidWorks s'enregistre a l'endroit souhaite par l'utilisateur sous le nom qu'il aura donne.
    La partie macro sous SolidWorks, remplacement des pieces, ne me pose pas de problem pour l'instant.
    - comment "transferer" des variables entre Excel et SolidWorks
    Il suffit que ta macro SolidWorks ait en paramètres les différents choix ainsi que le nom de fichier et que ceux-ci soit transmis par le Call d'Excel qui appelle cette fonction.
    Voir tout ce qui attrait à arglist ici : https://msdn.microsoft.com/fr-fr/lib.../gg278504.aspx

    Cela dit, il serait plus simple d'écrire les deux macros dans Excel (voir même de n'en faire qu'une) et de manipuler les objets SolidWorks depuis Excel en ayant chargé sa bibliothèque.

  3. #3
    Membre confirmé
    Inscrit en
    Avril 2010
    Messages
    93
    Détails du profil
    Informations forums :
    Inscription : Avril 2010
    Messages : 93
    Par défaut
    Merci Menhir pour ta reponse!

    Cela dit, il serait plus simple d'écrire les deux macros dans Excel (voir même de n'en faire qu'une) et de manipuler les objets SolidWorks depuis Excel en ayant chargé sa bibliothèque.
    Ah je ne savais pas qu'on pouvait faire ca! Si on peut tout faire via la macro Excel, en effet ca parait beaucoup plus simple. Comment est ce quon charge le bibliotheque?

    Yves

  4. #4
    Expert éminent 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
    Par défaut
    Dans le VBE > Menu Outils > Références
    Cocher les bibliothèques à utiliser pour le projet.

    Pour connaitre le nom des bibliothèques SolidWorks, je te conseille de regarder dans ce logiciel. Il doit y avoir quelque chose de semblable avec en début de liste les bibliothèques par défaut pour ce logiciel déjà cochées.

    On en parle ici : https://excel.developpez.com/faq/?page=Automation

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

Discussions similaires

  1. Ouvrir un fichier solidworks avec edrawing grâce à VB
    Par 2855cedric dans le forum Visual Studio
    Réponses: 0
    Dernier message: 04/09/2012, 15h07
  2. Une boite de dialogue accès fichiers images avec GDI+
    Par ProgElecT dans le forum Vos contributions VB6
    Réponses: 1
    Dernier message: 08/06/2008, 11h41
  3. boite de dialogue avec multiselection de fichiers
    Par SOPRA-Eherve dans le forum C++Builder
    Réponses: 1
    Dernier message: 24/03/2007, 00h54
  4. Réponses: 2
    Dernier message: 09/01/2007, 10h21
  5. dialoguer avec un serveur RADIUS
    Par jypee76 dans le forum Développement
    Réponses: 4
    Dernier message: 12/08/2003, 10h06

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