Création de fichiers DWG depuis une liste Excel

jms

XLDnaute Nouveau
Bonjour,

L'idée peut surprendre mais pensez-vous qu'il soit possible de générer la création de fichiers Autocad.dwg au travers d'une macro dans un classeur Xls ?
Les noms de ces fichiers seraient contenus dans une colonne et la macro créerait autant de fichier DWG que de ligne remplies.

Merci pour vos conseils.
 

herve62

XLDnaute Barbatruc
Supporter XLD
Re : Création de fichiers DWG depuis une liste Excel

Bonsoir
NON
l'inverse OUI DWG > PDF > EXCEL , jamais testé mais je sais que ca se fait ( rarement)
là ..... faut développer le logiciel !!!! si tu connais JAVA SCRIPT ( ex COBOL) et C++ , ca devrait le faire
Comme qui dirait : ' Y EN A QUI ONT ESSAYE !!!! '
Voilà , à mon avis change d'idée !!!!!!
 

jms

XLDnaute Nouveau
Re : Création de fichiers DWG depuis une liste Excel

Il faudra que j'en discute avec notre informaticien. Il y a une dizaine d'années, il avait développé une petite appli dans Access qui ouvrait certains fichiers Autocad, lançait une impression et le refermait. Et il ne connait rien à Autocad. S'il a pu faire cette appli, il doit pouvoir lancer Autocad et sauvegarder suivant un nom de fichier stocké dans une table...
A suivre donc, plutôt vers Access.
Merci.
 

laurent950

XLDnaute Accro
Re : Création de fichiers DWG depuis une liste Excel

Bonsoir,

C'est faisable, a partir d'Excel ont peux se connecter a au Autocad, et a partir d'une liste dans excel generer des fichiers .dwg (mais attention vierge) juste des fichiers .dwg nommée

Laurent
 
C

Compte Supprimé 979

Guest
Re : Création de fichiers DWG depuis une liste Excel

Laurent950

Ce forum est un forum de partage, il ne suffit pas de dire ... c'est possible :mad:

Ceci dis, jms,
si ta version Autocad gère le VBA, il suffit d'ajouter la référence dans Excel pour peut-être pouvoir le piloter ;)
 

laurent950

XLDnaute Accro
Re : Création de fichiers DWG depuis une liste Excel

Bonsoir jms, BrunoM45,

je suis désoler pour ce retard Autocad c'est pas très intuitif et je ne programme pas tous les jours, cela dit les macro VBA pour autocad sont très peux adaptable est c'est assez complexe et il n'y a pas trop d'aide en ligne.

J'ai fais le code pour jm bien sur il faudra l'adapter pour la suite de sont développement mais c'est exactement ca demande sur le point d'entrée de sa demande.

A partir d'Excel:
en cellule A1 = choix du répertoire
et en cellule A3 vers le bas A4,A5,A6 etc mettre le nom des fichiers qui seront enregistrer dans le répertoire du choix (cellule A1)

Chaque fichier sera .dwg (Format autocad vierge)

Le code :

VB:
Sub CreationFichierAutocad()
'''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
' variable excel
' Chemin
Dim chm As String
chm = "E:\"

' les Nom des repertoires stoké dans un tableau (ou autres)
Dim t() As Variant
' tableau predefini sur 7 lignes et une colonne
t = Range(Cells(3, 1), Cells(9, 1))
' ou taille variable
' T = Range(Cells(3 ,1), Cells(Cells(65536, 1).End(xlUp).Row, Cells(3, 256).End(xlToLeft).Column))

' *****************************************************************************
' Ps : pour rendre la taille du tableau variable sur x lignes et une colonne
'       explication ci-dessous
' Tableaux
'
' T = Range(Cells(3 ,1), Cells(Cells(65536, 1).End(xlUp).Row, Cells(3, 256).End(xlToLeft).Column))
'
' Range(Cells(3, 1)
' Premiere celule du tableau pour 3,1 c'est la celule A3
' Cells(Cells(65536, 1).End(xlUp).Row, Cells(3, 256).End(xlToLeft).Column)
' ici Cells(65536, 1).End(xlUp).Row = Pour la derniére ligne "Non Vide" de la colonne A (du bas vers le haut)
' Ici Cells(3, 256).End(xlToLeft).Column = Pour la derniére colonne "Non Vide" de la colonne I3

' *****************************************************************************
'''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
'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 = New AcadApplication
 'Rend AutoCAD visible
 AcadApp.Visible = True

For i = 1 To UBound(t, 1)
' utilise le document ouvert :
    Set AcadPlan = AcadApp.ActiveDocument
'Sauvegarde le dessin
    AcadPlan.SaveAs chm & t(i, 1) & ".dwg"
Next i

'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

End Sub

Ps : la macro Ouvre autocad et ferme autocad (il faut avoir autocad instaler sur sont poste)

je joint le fichier excel avec le code

laurent
 

Pièces jointes

  • vba autocad macro creation de fichier dwg.xlsm
    19.2 KB · Affichages: 134
Dernière édition:

Discussions similaires

Statistiques des forums

Discussions
312 166
Messages
2 085 889
Membres
103 019
dernier inscrit
Eliot_1