Communauté
AutoCAD – tous produits - Français
Bienvenue sur les forums AutoCAD d’Autodesk. Partagez vos connaissances, posez des questions, et explorez les sujets AutoCAD populaires.
annuler
Affichage des résultats de 
Afficher  uniquement  | Rechercher plutôt 
Vouliez-vous dire : 

bloc sans attribut

14 RÉPONSES 14
Répondre
Message 1 sur 15
Anonymous
530 Visites, 14 Réponses

bloc sans attribut

Bonjour à tous je me suis toujours débrouillé comme j'ai pu pour essayer d'integrer des attributs à des blocs sans, pour que je puisse les extraires, etc.., je reçois souvent des plans avec des blocs sans attributs, je recherche une routine pour les extraires tout simplement. PS: j'ai déjà essayé d'ajouter des attributs, attredef, mais ma méthode d'extraction ne les reconnait pas. je vous remercie d'avance de votre aide Michel a
14 RÉPONSES 14
Message 2 sur 15
Anonymous
en réponse à: Anonymous

"Michel a" a écrit dans le message de news: 40b425cd_3@newsprd01... > Bonjour à tous > > je me suis toujours débrouillé comme j'ai pu pour essayer d'integrer des > attributs à des blocs sans, pour que je puisse les extraires, etc.., je > reçois souvent des plans avec des blocs sans attributs, je recherche une > routine pour les extraires tout simplement. > > PS: j'ai déjà essayé d'ajouter des attributs, attredef, mais ma méthode > d'extraction ne les reconnait pas. > > je vous remercie d'avance de votre aide > > Michel a > > Bonjour Michel Très sincérement je ne comprend rien à la question :-( Si quelqu'un peut m'aider.... Bruno Toniutti
Message 3 sur 15
Anonymous
en réponse à: Anonymous

Bonjour Je ne pense pas que l'on puise récupérer des blocs ne contenant pas d'attributs directement par une commande Autocad. Il faut passer par un lisp ou une macro VBA. Bon courage C.L. "Michel a" a écrit dans le message de news:40b425cd_3@newsprd01... > Bonjour à tous > > je me suis toujours débrouillé comme j'ai pu pour essayer d'integrer des > attributs à des blocs sans, pour que je puisse les extraires, etc.., je > reçois souvent des plans avec des blocs sans attributs, je recherche une > routine pour les extraires tout simplement. > > PS: j'ai déjà essayé d'ajouter des attributs, attredef, mais ma méthode > d'extraction ne les reconnait pas. > > je vous remercie d'avance de votre aide > > Michel a > >
Message 4 sur 15
Anonymous
en réponse à: Anonymous

C'est tout simplement extraire les coordonnées x,y des blocs sans attribut dans Autocad par l'intermédiaire, d'un vba , lisp ou autre. Merci d'avance de votre aide Michel a
Message 5 sur 15
Anonymous
en réponse à: Anonymous

Michel a wrote: > C'est tout simplement extraire les coordonnées x,y des blocs sans > attribut dans Autocad par l'intermédiaire, d'un vba , lisp ou autre. > > Merci d'avance de votre aide > > Michel a Bonjour Tu fais un fichier texte "gabarit d'extraction" : par exemple truc.txt avec le bloc note Dans ce fichier tu mets : BL:X N010002 BL:Y N010002 N veut dire numérique 010002 veut dire 10 chiffres dont 2 décimales. Sit tu veux en plus le nom du bloc, tu ajoute une ligne du genre : BL:NAME C025000 (25 caractères alphanumériques, pas de décimale) Et ensuite tu fais extraire les attributs (outils extraire les attributs) ou attextr Dans les boites de dialogue, il te demandera si tu veux du SDF, CDF ou DXF Les plus faciles à exploiter sont SDF (délimité par des espaces) et CDF(délimité par des virgules) A ce moment tu choisis le fichier gabarit créé avant et tu saisis le nom du fichier vers lequel tu exporte. Tu pourras les lire en texte ou les importer dans Excel ou access par exemple. Note : Si tu as une version supérieure à 2002 et que tu as Office, il te proposera directement des formats "Office". A bientôt Enlever les ~ pour une réponse Eric Giffard MCSE Windows 2000 eric.giffard@~ifrance.com (perso) eric.g@~nextmedia.fr (boulot) http://www.nextmedia.fr
Message 6 sur 15
Anonymous
en réponse à: Anonymous

Merci pour la réponse, les fichiers gabarits je les ai pour tous mes blocs avec attribut, mais quand un bloc ne détient pas d'attribut, aucun bloc trouvé, même quand je lui rajoute un attribut, je vois l'attribut quand j'explose le bloc, mais le bloc n'est pas toujours trouvé........ Voilà y a t il un moyen de récupérer les x,y des blocs sans attribut A bientôt Michel a
Message 7 sur 15
Anonymous
en réponse à: Anonymous

Bonjour Ci apres une petite macro VBA qui traînait dans mes tiroirs et que j'ai adaptée pour toi. Elle se lance depuis Excel. Copier le code dans un module VBA d'un fichier Excel. S'assurer que dans l'éditeur Visual Basic, Options/Référence, la bibliothèque d'objet d'Autocad soit bien cochée. Ensuite lancer la macro, celle ci te demandera le fichier à traiter par la boite de dialogue standard, et tu récupérera dans Excel les renseignements demandés et plus. Bon courage C.L. Public Sub Extraire_Blocs() Dim AcadApp As AutoCAD.AcadApplication Dim SelSet As AutoCAD.AcadSelectionSet Dim FilterType(0) As Integer Dim FilterData(0) As Variant Dim FiltersType, FiltersData As Variant Dim Point As Variant Dim i, Ligne, j, Column As Integer Dim Entity As AcadEntity Dim BlocRef As AcadBlockReference Dim Attributes As Variant Dim ColumnExist As Boolean ' Efface toutes les données contenues dans la feuille Range("1:65536").ClearContents ' On lance AutoCAD Set AcadApp = New AutoCAD.AcadApplication ' On remets Excel au premier plan (le lancement d'AutoCAD désactive la fenêtre Excel) Application.Visible = True ' On demande le nom du fichier à ouvrir Cells(1, 1).Value = Application.GetOpenFilename("Dessins AutoCAD (*.dwg), *.dwg") ' On crée la ligne de titre Cells(3, 1).Value = "Nom du bloc" Cells(3, 2).Value = "X" Cells(3, 3).Value = "Y" Cells(3, 4).Value = "Z" Cells(3, 5).Value = "Echelle X" Cells(3, 6).Value = "Echelle Y" Cells(3, 7).Value = "Echelle Z" Cells(3, 8).Value = "Rotation" Cells(3, 9).Value = "Calque" ' On ouvre le fichier dans AutoCAD AcadApp.Documents.Open (Cells(1, 1).Text) Ligne = 4 ' 1ère ligne du tableau ' On crée un jeu de sélection Set SelSet = AcadApp.ActiveDocument.SelectionSets.Add("SELSET") ' On prépare un filtre de sélection sur les insertions de bloc FilterType(0) = 0 FilterData(0) = "INSERT" FiltersType = FilterType FiltersData = FilterData ' Sélection des entités SelSet.Select acSelectionSetAll, , , FiltersType, FiltersData ' On balaye le jeu de sélection For i = 0 To SelSet.Count - 1 Set Entity = SelSet.Item(i) ' Si l'objet est une insertion de bloc If Entity.ObjectName = "AcDbBlockReference" Then ' On précise le type de l'objet pour pouvoir accéder à ses propriétés et ' ses méthodes spécifiques Set BlocRef = Entity Cells(Ligne, 1) = BlocRef.Name Point = BlocRef.InsertionPoint Cells(Ligne, 2) = Point(0) Cells(Ligne, 3) = Point(1) Cells(Ligne, 4) = Point(2) Cells(Ligne, 5) = BlocRef.XScaleFactor Cells(Ligne, 6) = BlocRef.YScaleFactor Cells(Ligne, 7) = BlocRef.ZScaleFactor Cells(Ligne, 😎 = BlocRef.Rotation Cells(Ligne, 9) = BlocRef.Layer Ligne = Ligne + 1 End If Next ' On ferme AutoCAD AcadApp.Quit Reponse = MsgBox("Les blocs du dessin " & Cells(1, 1).Text & " ont été extraits avec succès.", 64, "Message de C.lecossier") End Sub "Michel a" a écrit dans le message de news:40b425cd_3@newsprd01... > Bonjour à tous > > je me suis toujours débrouillé comme j'ai pu pour essayer d'integrer des > attributs à des blocs sans, pour que je puisse les extraires, etc.., je > reçois souvent des plans avec des blocs sans attributs, je recherche une > routine pour les extraires tout simplement. > > PS: j'ai déjà essayé d'ajouter des attributs, attredef, mais ma méthode > d'extraction ne les reconnait pas. > > je vous remercie d'avance de votre aide > > Michel a > >
Message 8 sur 15
Anonymous
en réponse à: Anonymous

Merci C.L C'est bien ça que je cherchais mais dommage il ne veut pas fonctionner, j'ai vériffié les lignes, mais rien ne tourne il se bloque AcadApp.Documents.Open (Cells(1, 1).Text) j ai bien coché (Référence, la bibliothèque d'objet d'Autocad ) il ne me demande pas le nom du fichier .dwg et n'ouvre pas Autocad...... qu'est ce qui manque dans ce fichier ? Michel A
Message 9 sur 15
Anonymous
en réponse à: Anonymous

Bonjour Michel Tu travaille bien avec une version pleine d'Autocad ? D'abord la macro n'ouvre pas Autocad, elle lit et extrait simplement dans le fichier dessin les informations demandées. En conséquence le fichier dessin doit entre fermé, et Autocad aussi de préférence. Pour entrer le nom de fichier dessin, c'est la boite de dialogue "Ouvrir" d'Excel qui est affichée (petit temps d'attente), et donc il faut faire "Regarder dans" et parcourir jusqu'a sélection du fichier concerné. D'autre part c'est la case "Bibliothèques de type Autocad***" dans Outils/Référence qui doit entre cochée. Indique moi en retour quelle sont les cases cochées pour que je vérifie que ce sont bien les mêmes que moi. Sinon si tu n'arrive pas à utiliser la boite de dialogue "Ouvrir", voici une solution de dépannage: 1) insère une apostrophe devant les deux lignes du programme suivantes: Range("1:65536").ClearContents Cells(1, 1).Value = Application.GetOpenFilename("Dessins AutoCAD (*.dwg), *.dwg") afin qu'elle deviennent : 'Range("1:65536").ClearContents 'Cells(1, 1).Value = Application.GetOpenFilename("Dessins AutoCAD (*.dwg), *.dwg") ceci afin des les neutraliser Ensuite dans une feuille vide d'un classeur Excel écrit dans la cellule A1 le nom du fichier dessin que tu veux traiter y compris son chemin complet, du style "c:\RepertoireDessin\dessin.dwg" Relance la macro Tiens moi au courant Bon courage C.L. "Michel" a écrit dans le message de news:40b6074b_1@newsprd01... > Merci C.L > > C'est bien ça que je cherchais mais dommage il ne veut pas fonctionner, j'ai > vériffié les lignes, mais rien ne tourne il se bloque > AcadApp.Documents.Open (Cells(1, 1).Text) > > j ai bien coché (Référence, la bibliothèque d'objet d'Autocad ) > > il ne me demande pas le nom du fichier .dwg et n'ouvre pas Autocad...... > > qu'est ce qui manque dans ce fichier ? > > > Michel A > >
Message 10 sur 15
Anonymous
en réponse à: Anonymous

Bonjour Christian J'ai essayé comme vous m'avez dit de désactiver les lignes, j'ai toujours les mêmes erreurs j'ai autocad map2 et Autocad light 2000 installé dans la même machine, je décoche dans référence biblio 2000 et je coche celui du map2 et ça ne fonctionne toujours pas. Merci de votre aide Michel a "Christian.L" a écrit dans le message de news: 40b6df06_3@newsprd01... > Bonjour Michel > > Tu travaille bien avec une version pleine d'Autocad ? > > D'abord la macro n'ouvre pas Autocad, elle lit et extrait simplement dans le > fichier dessin les informations demandées. > En conséquence le fichier dessin doit entre fermé, et Autocad aussi de > préférence. > > Pour entrer le nom de fichier dessin, c'est la boite de dialogue "Ouvrir" > d'Excel qui est affichée (petit temps d'attente), et donc il faut faire > "Regarder dans" et parcourir jusqu'a sélection du fichier concerné. > > D'autre part c'est la case "Bibliothèques de type Autocad***" dans > Outils/Référence qui doit entre cochée. > > Indique moi en retour quelle sont les cases cochées pour que je vérifie que > ce sont bien les mêmes que moi. > > Sinon si tu n'arrive pas à utiliser la boite de dialogue "Ouvrir", voici une > solution de dépannage: > 1) insère une apostrophe devant les deux lignes du programme suivantes: > Range("1:65536").ClearContents > Cells(1, 1).Value = Application.GetOpenFilename("Dessins AutoCAD > (*.dwg), *.dwg") > > afin qu'elle deviennent : > > 'Range("1:65536").ClearContents > 'Cells(1, 1).Value = Application.GetOpenFilename("Dessins AutoCAD > (*.dwg), *.dwg") > ceci afin des les neutraliser > > Ensuite dans une feuille vide d'un classeur Excel écrit dans la cellule A1 > le nom du fichier dessin que tu veux traiter y compris son chemin complet, > du style "c:\RepertoireDessin\dessin.dwg" > Relance la macro > > Tiens moi au courant > > Bon courage > > C.L. > > > > "Michel" a écrit dans le message de > news:40b6074b_1@newsprd01... > > Merci C.L > > > > C'est bien ça que je cherchais mais dommage il ne veut pas fonctionner, > j'ai > > vériffié les lignes, mais rien ne tourne il se bloque > > AcadApp.Documents.Open (Cells(1, 1).Text) > > > > j ai bien coché (Référence, la bibliothèque d'objet d'Autocad ) > > > > il ne me demande pas le nom du fichier .dwg et n'ouvre pas Autocad...... > > > > qu'est ce qui manque dans ce fichier ? > > > > > > Michel A > > > > >
Message 11 sur 15
Anonymous
en réponse à: Anonymous

Bonjour Michel La routine utilise VBA pour fonctionner, hors seul la version pleine d'Autocad supporte VBA et il faut dons celle ci pour que celle ci fonctionne. Autocad LT n'ayant pas VBA, la routine ne fonctionne pas avec la version allégée de Autocad. Je ne connais pas Autocad Map2, et ne peux donc pas t'aider sur ce logiciel. Désolé C.L. "Michel a" a écrit dans le message de news:40bd7140_2@newsprd01... > Bonjour Christian > > J'ai essayé comme vous m'avez dit de désactiver les lignes, j'ai toujours > les mêmes erreurs > j'ai autocad map2 et Autocad light 2000 installé dans la même machine, je > décoche dans référence biblio 2000 > et je coche celui du map2 > > et ça ne fonctionne toujours pas. > > Merci de votre aide > > Michel a > > "Christian.L" a écrit dans le message de > news: 40b6df06_3@newsprd01... > > Bonjour Michel > > > > Tu travaille bien avec une version pleine d'Autocad ? > > > > D'abord la macro n'ouvre pas Autocad, elle lit et extrait simplement dans > le > > fichier dessin les informations demandées. > > En conséquence le fichier dessin doit entre fermé, et Autocad aussi de > > préférence. > > > > Pour entrer le nom de fichier dessin, c'est la boite de dialogue "Ouvrir" > > d'Excel qui est affichée (petit temps d'attente), et donc il faut faire > > "Regarder dans" et parcourir jusqu'a sélection du fichier concerné. > > > > D'autre part c'est la case "Bibliothèques de type Autocad***" dans > > Outils/Référence qui doit entre cochée. > > > > Indique moi en retour quelle sont les cases cochées pour que je vérifie > que > > ce sont bien les mêmes que moi. > > > > Sinon si tu n'arrive pas à utiliser la boite de dialogue "Ouvrir", voici > une > > solution de dépannage: > > 1) insère une apostrophe devant les deux lignes du programme suivantes: > > Range("1:65536").ClearContents > > Cells(1, 1).Value = Application.GetOpenFilename("Dessins AutoCAD > > (*.dwg), *.dwg") > > > > afin qu'elle deviennent : > > > > 'Range("1:65536").ClearContents > > 'Cells(1, 1).Value = Application.GetOpenFilename("Dessins AutoCAD > > (*.dwg), *.dwg") > > ceci afin des les neutraliser > > > > Ensuite dans une feuille vide d'un classeur Excel écrit dans la cellule A1 > > le nom du fichier dessin que tu veux traiter y compris son chemin complet, > > du style "c:\RepertoireDessin\dessin.dwg" > > Relance la macro > > > > Tiens moi au courant > > > > Bon courage > > > > C.L. > > > > > > > > "Michel" a écrit dans le message de > > news:40b6074b_1@newsprd01... > > > Merci C.L > > > > > > C'est bien ça que je cherchais mais dommage il ne veut pas fonctionner, > > j'ai > > > vériffié les lignes, mais rien ne tourne il se bloque > > > AcadApp.Documents.Open (Cells(1, 1).Text) > > > > > > j ai bien coché (Référence, la bibliothèque d'objet d'Autocad ) > > > > > > il ne me demande pas le nom du fichier .dwg et n'ouvre pas Autocad...... > > > > > > qu'est ce qui manque dans ce fichier ? > > > > > > > > > Michel A > > > > > > > > > > >
Message 12 sur 15
Anonymous
en réponse à: Anonymous

Re Merci pour votre réponse, que faut il comme autocad et environnement pour que cette routine fonctionne, par exxemple chez vous ??? Merci Michel a
Message 13 sur 15
Anonymous
en réponse à: Anonymous

Re bonjour Pour faire fonctionner la routine il faut : - Excel - Autocad version pleine En effet la routine fonctionne en VBA (Visual Basic for Application), Excel dispose de VBA d'origine, mais seul Autocad version pleine en dispose, Autocad LT n'en dispose pas Les deux applications supportant VBA, elles peuvent communiquer entre elles, à condition d'informer chacune que l'autre est installée d'ou la déclaration des bibliothèques d'objet dans Outils/Référence. Bonne journée "Michel" a écrit dans le message de news:40bd7fc6_2@newsprd01... > Re > > Merci pour votre réponse, que faut il comme autocad et environnement pour > que cette routine fonctionne, par exxemple chez vous ??? > > Merci > > Michel a > >
Message 14 sur 15
Anonymous
en réponse à: Anonymous

Michel,

Bien que cette routine est destinée à travailler essentiellement avec des points, elle fonctionne aussi avec des insertions.

Le résultat est un fichier ASCII du type X Y Z qui pourra être importé dans excel.

Bruno
Message 15 sur 15
Anonymous
en réponse à: Anonymous

Merci Bruno Ce lisp est bien pratique, il fonctionne. Michel a "bruno.valsecchi" a écrit dans le message de news: 27135704.1086246114026.JavaMail.jive@jiveforum1.autodesk.com... Michel, Bien que cette routine est destinée à travailler essentiellement avec des points, elle fonctionne aussi avec des insertions. Le résultat est un fichier ASCII du type X Y Z qui pourra être importé dans excel. Bruno

Vous n'avez pas trouvé ce que vous recherchiez ? Posez une question à la communauté ou partagez vos connaissances.

Publier dans les forums  

Autodesk Design & Make Report