Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

Probleme Liaisn Excell Autocad

julien1982

XLDnaute Occasionnel
Bonjour a tous et deja un grand merci pour vos réponses.

Je suis en train de faire une feuille excel qui me permets d’insérer et de faire des folios de montage sur Autocad.

Mon soucis c'est que j'ai mon code VBA qui plante à cet endroit



Si quelqu'un avait une idée....ca serai cool

Si vous avez besoin de plus d'infos je vous donnerai ce qu'il faut.
Pour infos Excel 2016 et AutoCAD 2018


Je vous remercie par avance.
 

eriiic

XLDnaute Barbatruc
Bonjour,

qui plante sans message d'erreur ou bien c'est secret ?
pour moi SaveAs est réservé aux fichiers excel et le tien n'a pas l'air d'en être un.
Si un .Save normal fonctionne tu peux le renommer et/ou le déplacer avec l'instruction Name :
eric
 

julien1982

XLDnaute Occasionnel
Bonsoir le fil, le forum

@julien1982
Tu peux joindre le code complet de de cette procédure?
de
Sub NomdeLaMacro()
à
End Sub
Bonjour Staple1600

ci joint le code de la macro.

Sub DWG_CM()
'''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
' variable excel
' Chemin
Dim chm As String
chm = "C:\export\"
Dim nom_feuille As String
nom_feuille = ActiveSheet.Name
Dim nom_dwg As String
nom_dwg = Sheets(nom_feuille).Cells(2, 2)
'''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
'Depart autocad
'Nécessite la référence Autocad xxx Type Library (Menu Outils > Références)
Dim AcadApp As AcadApplication
Dim AcadPlan As AcadDocument

'Création de l'objet AutoCAD dans Excel :
Set AcadApp = AcadApplication

'Si ACAD n'est pas ouvert, il faut créer une nouvelle application comme si dessous :
' Set AcadApp = AcadApplication
Set AcadApp = New AcadApplication
'Rend AutoCAD visible
AcadApp.Visible = False


' utilise le document ouvert :
Set AcadPlan = AcadApp.Documents.Open("C:\Montage V160\Excel\A4-CM.dwg")
'Set AcadPlan = AcadApp.ActiveDocument
'Set AcadDoc = GetObject(, "Autocad.Application").ActiveDocument
AcadApp.ActiveDocument.SendCommand ("filedia" & vbCr & "0" & vbCr & "script" & vbCr & chm & nom_dwg & ".scr" & vbCr & "filedia" & vbCr & "1" & vbCr)
'("'script" & vbCr & "c:\export\sup.scr" & vbCr)
'Set AcadPlan = AcadApp.tools.Script("c:\export\sup.scr")

'Sauvegarde le dessin
AcadPlan.SaveAs chm & nom_dwg & ".dwg"

'Ferme le dessin
AcadPlan.Close

'Ferme l'application AutoCAD
AcadApp.Quit

'Libérer la mémoire des objets ouverts
Set AcadApp = Nothing
Set AcadPlan = Nothing

Kill (chm & nom_dwg & ".scr")

End Sub

en vous remerciant par avance.
 

Staple1600

XLDnaute Barbatruc
Bonsoir le fil, le forum, julien 1982, eriiiic

En farfouillant sur le net, on trouve ce type de syntaxe pour SaveAs
(que j'ai donc adapté à ton code)
'Sauvegarde le dessin
Code:
AcadPlan.SendCommand "_SaveAs" & vbCr & "2004" & vbCr & chm & nom_dwg & ".dwg" & vbCr & "filedia" & vbCr & "1" & vbCr

Je te laisse tester par je possède pas AutoCad )
 

Discussions similaires

Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…