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

upload_2018-5-27_18-25-37.png


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

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 :
Name oldpathname As newpathname
La syntaxe de l'instruction Name comprend les éléments suivants :
Élément Description
oldpathname Expression de chaîne indiquant le nom et le chemin du fichier. Cet argument peut contenir le répertoire ou dossier et le lecteur.
newpathname Expression de chaîne indiquant les nouveaux nom et chemin du fichier. Cet argument peut préciser le répertoire ou le dossier et le lecteur. Le nom de fichier indiqué dans l'argument newpathname ne peut pas correspondre à un fichier existant.
Remarques
L'instruction Name renomme un fichier et le déplace le cas échéant vers un nouveau répertoire ou dossier.
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

Membres actuellement en ligne

Statistiques des forums

Discussions
312 196
Messages
2 086 099
Membres
103 116
dernier inscrit
kutobi87