seb71700 Posté(e) le 9 août 2014 Posté(e) le 9 août 2014 Bonjour à tous, C'est ma première demande sur ce forum alors ne m'en voulez pas si je suis pas très clair !!!! Dans mon nouveau boulot, il y a toute une base de fichiers AUTOCAD qui ont été créés sans utiliser les propriétés du dessin et les cartouches sont remplis par de simples textes. On envisage d'installer VAULT ou un PLM plus complet mais impossible de faire des recherches sur des fichiers qui n'ont pas de propriétés !!!! Ma demande est simple : une macro en VBA qui ajouterait les propriétés du dessin ( Fichier ==> Propriété du dessin ==> Onglet personnaliser ==> Ajouter ) afin d'éviter de les créer manuellement. Besoin d'environ 8 propriétés ( Famille, Affaire, Client, Portée, HSF, CMU, Numéro, Délai). Elles seraient ensuite renseignées par les utilisateurs ( par un userform peut etre.... déja fait sur excel mais débutant sur autocad) J'ai déjà cherché sur ce forum et sur internet mais rien trouvé qui puisse m'aider Merci à tous pour votre aide @+ Citer
laud69 Posté(e) le 12 août 2014 Posté(e) le 12 août 2014 Bonjour, J'ai un collegue dévelloppeur qui nous l'avait fait. J'ai retoruvé qu'un fichier .BAS je ne sais si c'est exploitable ? Exemple dedans : Sub SetCustomDwgProps() 'Lines below set the standard properties ThisDrawing.SummaryInfo.Author = ThisDrawing.GetVariable("LOGINNAME") ThisDrawing.SummaryInfo.Comments = "" ThisDrawing.SummaryInfo.RevisionNumber = 1 ThisDrawing.SummaryInfo.Title = "Schema" ThisDrawing.SummaryInfo.Subject = "" ThisDrawing.SummaryInfo.Keywords = "" 'The lines below create custom properties Call setCustvalue("CLIENT", ("-")) Call setCustvalue("AFFAIRE N°", ("-")) Call setCustvalue("DATE_IND_A", ("-")) Call setCustvalue("DESSINATEUR_A", ("-")) Call setCustvalue("MODIF_IND_A", ("-")) Call setCustvalue("DATE_IND_B", ("-")) Call setCustvalue("DESSINATEUR_B", ("-")) Call setCustvalue("MODIF_IND_B", ("-")) Call setCustvalue("DATE_IND_C", ("-")) Call setCustvalue("DESSINATEUR_C", ("-")) Call setCustvalue("MODIF_IND_C", ("-")) Call setCustvalue("DATE_IND_D", ("-")) Call setCustvalue("DESSINATEUR_D", ("-")) Call setCustvalue("MODIF_IND_D", ("-")) Call setCustvalue("DATE_IND_E", ("-")) Call setCustvalue("DESSINATEUR_E", ("-")) Call setCustvalue("MODIF_IND_E", ("-")) Call setCustvalue("DATE_IND_F", ("-")) Call setCustvalue("DESSINATEUR_F", ("-")) Call setCustvalue("MODIF_IND_F", ("-")) Call setCustvalue("DATE_IND_G", ("-")) Call setCustvalue("DESSINATEUR_G", ("-")) Call setCustvalue("MODIF_IND_G", ("-")) Call setCustvalue("DATE_IND_H", ("-")) Call setCustvalue("DESSINATEUR_H", ("-")) Call setCustvalue("MODIF_IND_H", ("-")) Call setCustvalue("DATE_IND_I", ("-")) Call setCustvalue("DESSINATEUR_I", ("-")) Call setCustvalue("MODIF_IND_I", ("-")) Call setCustvalue("DATE_IND_J", ("-")) Call setCustvalue("DESSINATEUR_J", ("-")) Call setCustvalue("MODIF_IND_J", ("-")) Call setCustvalue("DATE_IND_K", ("-")) Call setCustvalue("DESSINATEUR_K", ("-")) Call setCustvalue("MODIF_IND_K", ("-")) Call setCustvalue("DATE_IND_L", ("-")) Call setCustvalue("DESSINATEUR_L", ("-")) Call setCustvalue("MODIF_IND_L", ("-")) End Sub 'Set Custom Property Value Sub setCustvalue(key, value) Dim custvalue As String Set osumm = ThisDrawing.SummaryInfo On Error Resume Next osumm.GetCustomByKey key, custvalue On Error GoTo 0 If custvalue = "" Then osumm.AddCustomInfo key, value Else osumm.SetCustomByKey key, value End If End Sub Citer
seb71700 Posté(e) le 12 août 2014 Auteur Posté(e) le 12 août 2014 C'est exactement ce que je cherchais !!! Merci beaucoup laud69 !!! Citer
Messages recommandés