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 :

Création macro ouverture fichier solidwork [XL-2016]


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre régulier
    Homme Profil pro
    dessinateur industriel
    Inscrit en
    Avril 2018
    Messages
    10
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 34
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : dessinateur industriel
    Secteur : Industrie

    Informations forums :
    Inscription : Avril 2018
    Messages : 10
    Par défaut Création macro ouverture fichier solidwork
    Bonjour tout le monde !

    Je viens vers vous car je cherche à me faciliter la vie ! Je suis dessinateur industriel et toutes les pièces que je dessine en 3D, je dois ensuite les faire fabriquer par des sous-traitants. Pour cela je dois créer des fichier .STEP .PDF et .DXF à partir de mon logiciel de conception (SolidWorks). Je dois ensuite dispatcher les pièces en fonction de leur nature chez le sous-traitant concerné : pièces usinées chez l'usineur, pièce mécano-soudée chez le chaudronnier.... Et cette étape est longue et fastidieuse, sans compter les oublis et les erreurs d'envois ^^. Je peux récupérer un tableau Excel du logiciel de conception avec la nature des pièces, leur nom, le chemin complet du dossier.

    En bref après avoir récupéré le tableau Excel je veux ajouter un filtre de sélection pour pouvoir afficher juste le type de pièce (pièces usinées par exemple) et qu’une macro ouvre tous les fichiers filtrés du tableau dans SolidWorks. Après via l’autre logiciel je lancerai une autre macro pour générer les fichiers neutres voulus mais il s’agit là d’une autre étape que j'ai déjà plus au moins résolu.

    Je voulais donc savoir s’il était possible d’avoir une macro sous un bouton qui permettra d’ouvrir des fichiers en ayant juste le nom des fichiers et le nom du dossier dans lesquels sont mis les fichiers. En sachant que :

    - tous les fichiers ne se trouvent pas dans le même dossier,
    - tous les fichiers on des noms différents,
    - plusieurs dossiers peuvent avoir le même nom,
    - pour un nom de fichier, il y a le 3D et le 2D sous le même nom. Par exemple la pièce blabla aura son 3D qui se nommera blabla.SLDPRT et la mise en plan se nommera blabla.SLDDRW. Il faudrait que la macro puisse ouvrir les deux fichiers (qui s’ouvrent avec le même logiciel).

    Je cherche depuis un bout de temps déjà sur L'Internet et j'ai réussi à créer un bouton sur Excel qui me permet d'ouvrir une pièce mais la macro n'ouvre que le 3D d'une pièce, en connaissant le nom et le chemin :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    Sub Bouton1_Cliquer()
     
    Dim myBool As Boolean
    Dim myError As Long, myWarning As Long
     
    myBool = Shell("C:\Program Files\SOLIDWORKS Corp\SOLIDWORKS\SLDWORKS.exe", vbNormalFocus)
     
    Set swApp = CreateObject("SldWorks.Application")
    Set swModel = swApp.OpenDoc6("C:\Users\SONFVER\Desktop\macro\test\01.sldprt", 1, 1, "", myError, myWarning)
    Set swApp = Nothing: Set swModel = Nothing
     
    End Sub
    Bon j’espère que j’ai été assez clair dans mon explication ^^ ! Je vois bien ce que je souhaite mais il est facile de s’embrouiller en voulant expliquer ça par écrit…Je fais mes premiers pas dans le vaste monde des macros et j'avoue que je m'y perd un peu .

    Merci beaucoup à ceux qui prendront le temps de lire ce post et merci à tous de permettre ce genre d’aide sur la toile.

  2. #2
    Membre Expert
    Avatar de Igloobel
    Homme Profil pro
    Développeur ERP - VBA et Formateur bureautique
    Inscrit en
    Septembre 2005
    Messages
    1 871
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Loiret (Centre)

    Informations professionnelles :
    Activité : Développeur ERP - VBA et Formateur bureautique
    Secteur : Industrie

    Informations forums :
    Inscription : Septembre 2005
    Messages : 1 871
    Billets dans le blog
    1
    Par défaut
    Bonjour,

    j'ai 2 questions :

    1) as-tu essayé la fonction DIR ? elle permet de boucler sur des fichiers qui ne sont pas forcement de fichiers Excel

    2) Pourquoi as tu choisi Excel pour piloter SOLIDWORKS ?

    @ Bientôt

  3. #3
    Candidat au Club Avatar de pbergmann45
    Homme Profil pro
    Retraité
    Inscrit en
    Mai 2016
    Messages
    4
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Loiret (Centre)

    Informations professionnelles :
    Activité : Retraité
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Mai 2016
    Messages : 4
    Par défaut Piloter les fichiers solidworks
    Serai-il plus adapté d'utiliser autre chose qu' Excel pour ce que vous voulez faire!
    Je pense que oui: Hta pour l'interface graphique, Shell et VBscript pour sa partie script me semble une solution correcte.
    Cordialement.

  4. #4
    Membre régulier
    Homme Profil pro
    dessinateur industriel
    Inscrit en
    Avril 2018
    Messages
    10
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 34
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : dessinateur industriel
    Secteur : Industrie

    Informations forums :
    Inscription : Avril 2018
    Messages : 10
    Par défaut
    Merci de vos réponses !

    @ Igloobel :

    1) Je ne connais pas les fonctions des scripts ^^ ! Je débute tout juste alors je lis quelques lignes de codes que je trouve à droite à gauche et j'essaie de comprendre les lignes que je copie/colle pour ma macro et je vois ce que ça donne. Alors non je ne pense pas que j'ai déjà essayé la fonction DIR

    2) En fait si j'utilise Excel c'est que j'ai directement mes tableaux de commande pour la suite. Et que le tableau que je récupère de SolidWorks avec les propriétés me permet de classifier les pièces de mes conceptions par famille avec les filtres et donc de préparer mes dossiers d'envoi un par un. Et surtout vu que je n'y connais rien en programmation les macros Excel me semblaient être un bon moyen de commencer =) !

    @ pbergmann45 :

    Comme je le disais plus haut je débarque tout juste dans le monde des scripts. Je connais bien Excel alors je me suis dis que j'allais commencer avec ça

  5. #5
    Membre Expert
    Avatar de Igloobel
    Homme Profil pro
    Développeur ERP - VBA et Formateur bureautique
    Inscrit en
    Septembre 2005
    Messages
    1 871
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Loiret (Centre)

    Informations professionnelles :
    Activité : Développeur ERP - VBA et Formateur bureautique
    Secteur : Industrie

    Informations forums :
    Inscription : Septembre 2005
    Messages : 1 871
    Billets dans le blog
    1
    Par défaut
    @ pbergmann45 :

    Je connaissais pas HTA et cela semble interessant et je vais m'y pencher

    mais pour notre amis chikchik cela semble un peu compliqué (sans vouloir véxer ou insulter )

    @ chikchik :

    j'ai pas SOLIWORKS mais je vais essayé de t'aidé

    la fonction Dir permet de récupérer tous tes nom de fichiers .SLDPRT ou .SLDDRW

    et pour l'ouverture j'utiliserais ton shell

    voici un exemple avec NOTEPAD

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    Sub test()
    RetVal = Shell("C:\WINDOWS\NOTEPAD.EXE d:\TreeSys.txt", 1)
    End Sub
    Peux tu faire une copie écran de comment c'est organisé sur ton fichier Excel

    cache les données sensible


    A+

  6. #6
    Membre régulier
    Homme Profil pro
    dessinateur industriel
    Inscrit en
    Avril 2018
    Messages
    10
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 34
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : dessinateur industriel
    Secteur : Industrie

    Informations forums :
    Inscription : Avril 2018
    Messages : 10
    Par défaut
    Merci de prendre le temps de me répondre Igloobel

    Bon dans l'idée voici le tableau (très peu de pièces en exemples mais la liste peut être longue...) :

    Nom : tableau normal.png
Affichages : 3603
Taille : 27,3 Ko

    Et dans l'idée il faudrait que je puisse ouvrir les pièces restantes dans le tableau après l'application des filtres dans les colonnes, ici le filtre "Pièce usinée" est appliqué sur la colonne "Type de composant" :

    Nom : tableau filtré.png
Affichages : 3364
Taille : 12,9 Ko

    Voilà pour la copie d'écran =) ! Et non t'inquiètes ce n'était ni vexant ni insultant ahahah. Juste terriblement vrai !

    Merci encore pour le coup de main

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

Discussions similaires

  1. [XL-2007] Macro ouverture fichiers
    Par leolomi dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 16/02/2016, 15h12
  2. [XL-2010] Création macros pour fichier devis
    Par Pupul25 dans le forum Macros et VBA Excel
    Réponses: 10
    Dernier message: 06/03/2013, 09h36
  3. [Toutes versions] Macro ouverture fichier Excel + formatage
    Par asengs dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 10/02/2011, 11h44
  4. Macro ouverture Fichier puis enregistrement : Comment la simplifier ?
    Par mattwarend dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 21/11/2008, 11h02
  5. [VBA-E] Macro ouverture fichier déja ouvert
    Par bhaal76 dans le forum Macros et VBA Excel
    Réponses: 4
    Dernier message: 18/12/2002, 14h30

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