Microsoft 365 dxf auto lien solidworks excel

babas08

XLDnaute Nouveau
Bonjour,

je me présente je m'appel sébastien et j'au rai besoin de votre aide pour un lien etre excel et solidwoks via des macro (déjà es ce que cela est possible ou pas)

je suis débutant en VB juste des notions et je souhaiterai avancer sur ce projet en meme temps apprendre le vb

mon projet et le suivant :

j'ai actuellement une boom sous Excel ou se trouve mes codes sw des différentes pièces ainsi que mes codes ERP

Pour faire simple j'aimerai qu'à partir du fichier excel j'arrive à ouvrir les 3D des pièces qui sont en Catégorie Pièces=" Nouveau" et Types pièces="Fabriquée"ou" Pièce/Opé Panoplie" colonne w et x

les pièces se trouvent dans un dossier sous EPDM ( mais LE NOM de celui ci peut changer ) donc je ne voit pas comment gérer cela sauf en le donnant le moment voulu….. pour l'exemple le nom du fichier est "C:\_FICHETBAUCHE\03 Projets\01 Safes\PBZ00371\Technical file\02 CAD\Millium-Newton feu, cadre modifié caisse ext popée"

en suite le but de pouvoir ouvrir ces fichiers et de pouvoir enregistré ceux ci au format ".DXF" dans le fichier ci joint " G:\@Partage\EPDM-GenerationPDF\DXF"
En le renommant avec le code qui apparait dans le fichier excel sur la meme ligne que le code sw a savoir "Article produit/Poste de charge" colonne M

EXEMPLE concret :

ouvrir le 3D SW00244066 chemin d'access
"C:\_FICHETBAUCHE\03 Projets\01 Safes\PBZ00371\Technical file\02 CAD\Millium-Newton feu, cadre modifié caisse ext popée"
enregistré le fichier ouvert en .dxf avec comme nom 82454012 en retirant le premier chiffre donc
2454012 dans le chemin ci joint
" G:\@Partage\EPDM-GenerationPDF\DXF"

et rebouclé cela pour tous les cas ou l'on trouve les
Catégorie Pièces=" Nouveau" et Types pièces="Fabriquée" ou" Pièce/Opé Panoplie" dans les colonne w et x

ci joint le fichier excel de base

je n'ai aucune notion si cela est possible ou pas et complexe ou non

Merci de votre aide et de vos explications

Sébastien
 

Pièces jointes

  • Classeur1.xlsx
    146.8 KB · Affichages: 25

babas08

XLDnaute Nouveau
Re

Est-ce que tu as un lien qui explicite les spécificités d'un fichier au format DXF ?


Re

voici ce que cela me genère comme code quand j'enregistre l'enregistrement de mon 3D en DXF

j'espère avoir compris votre question

' ******************************************************************************
' C:\Users\SEBSAL\AppData\Local\Temp\swx8780\Macro1.swb - macro recorded on 12/22/20 by SEBSAL
' ******************************************************************************
Dim swApp As Object
Dim Part As Object
Dim boolstatus As Boolean
Dim longstatus As Long, longwarnings As Long
Sub main()
Set swApp = Application.SldWorks
Set Part = swApp.ActiveDoc
boolstatus = Part.Extension.SelectByID2("Etat d?pli?2", "BODYFEATURE", 0, 0, 0, True, 0, Nothing, 0)
' Save As
longstatus = Part.SaveAs3("G:\@Partage\EPDM-GenerationPDF\DXF\54 56 042 A.DXF", 0, 0)
' Redraw
Part.GraphicsRedraw2
Dim swDrawing As Object
Set swDrawing = swApp.NewDocument("C:\ProgramData\SolidWorks\SOLIDWORKS 2019\templates\Mise en plan.drwdot", 0, 0, 0)
Set Part = swApp.ActiveDoc
Dim myModelView As Object
Set myModelView = Part.ActiveView
myModelView.FrameLeft = 0
myModelView.FrameTop = 22
Set myModelView = Part.ActiveView
myModelView.FrameState = swWindowState_e.swWindowMaximized
swApp.ActivateDoc2 "Mise en plan18 - Feuille1", False, longstatus
Set Part = swApp.ActiveDoc
Set Part = swApp.ActiveDoc
Set myModelView = Part.ActiveView
myModelView.FrameLeft = 0
myModelView.FrameTop = 0
Set myModelView = Part.ActiveView
myModelView.FrameState = swWindowState_e.swWindowMaximized
swApp.ActivateDoc2 "SW00244143", False, longstatus
Set Part = swApp.ActiveDoc
Part.EditUnsuppress2
Part.ClearSelection2 True
Part.BlankSketch
Part.BlankSketch
Part.BlankSketch
Part.BlankSketch
Part.BlankSketch
Part.BlankSketch
Part.BlankSketch
Part.BlankSketch
Part.BlankSketch
Part.BlankSketch
Part.BlankSketch
Part.BlankSketch
Part.BlankSketch
Part.BlankSketch
' New View
Part.NameView "DxfOutputModelView"
Dim myView As Object
Set myView = Part.CreateDrawViewFromModelView3("C:\_fichetbauche\03 projets\01 safes\pbz00371\technical file\02 cad\millium-newton feu, cadre modifi? caisse ext pop?e\SW00244143.sldprt", "DxfOutputModelView", 0, 0, 0)
boolstatus = Part.DeleteNamedView(DxfOutputModelView)
Part.BlankSketch
Part.BlankSketch
Part.BlankSketch
Part.BlankSketch
Part.BlankSketch
Part.BlankSketch
Part.BlankSketch
Part.BlankSketch
Part.BlankSketch
Part.BlankSketch
Part.UnblankSketch
Part.UnblankSketch
Part.EditSuppress2
Part.ClearSelection2 True
Part.ClearSelection2 True
End Sub
 

babas08

XLDnaute Nouveau
Re

Je ne parlais pas de ton code VBA mais de ceci
Et si j'ai bien compris ta problématique, on peut la résumer à
Importer un fichier *.DXF dans Excel par une macro VBA (stockée dans Excel)


RE

OK vraiment désolé comme précisé je débute

en espérant que vous pourrez m'aider
 

babas08

XLDnaute Nouveau
Re

j'ai ajouté des précisions dans l'édition de mon précédent message
Peux-tu stp, préciser plus clairement ce que souhaites faire?
Car je ne suis pas sûr d'avoir compris
(voir phrase en bleu dans mon précédent message)


Et si j'ai bien compris ta problématique, on peut la résumer à
Importer un fichier *.DXF dans Excel par une macro VBA (stockée dans Excel)

voila ce que je cherche a faire

ce que je veux c'est ouvrir un fichier SolidWorks code "SW00246034.sldprt" " chemin d'accès "C:\_FICHETBAUCHE\03 Projets\01 Safes\PBZ00371\Technical file\02 CAD\Millium-Newton feu, cadre modifié caisse ext popée"
et ensuite l'enregistrer en format dxf ce numéro de fichier ce trouve en colonne L de la BOOM

et répéter cela sur tt les lignes de ma boom ou je trouve "nouveau" en colonne w et " Fabriquée" ou " Pièce/Opé Panoplie"



j'espère avoir été assez clair si tu as besoin de plus de précisions n'hésite pas

merci
 
Dernière édition:

Staple1600

XLDnaute Barbatruc
Re

N'oublie pas que nous ne sommes pas dans ta tête (ni dans ton environnement professionnel)
1) je ne sais pas ce qu'est une boom
2) Plus tu expliqueras longuement et avec détails ce que tu veux faire, plus vite, on sera en mesure de t'aider.

EDITION
J'ai ouvert ton classeur.
Ca aide déjà un peu mais pas assez pour ce qui concerne mes neurones. ;)
 

babas08

XLDnaute Nouveau
Re

N'oublie pas que nous ne sommes pas dans ta tête (ni dans ton environnement professionnel)
1) je ne sais pas ce qu'est une boom
2) Plus tu expliqueras longuement et avec détails ce que tu veux faire, plus vite, on sera en mesure de t'aider.

EDITION
J'ai ouvert ton classeur.
Ca aide déjà un peu mais pas assez pour ce qui concerne mes neurones. ;)


oui tu as entièrement raison il est vrai que je n'avais pas pensé que certains mots technique n'est pas connu de tt le monde

je ferai plus clair a l'avenir

si tu as besoin de plus ample explications je suis dispo
 

Statistiques des forums

Discussions
312 194
Messages
2 086 068
Membres
103 110
dernier inscrit
Privé