Jump to content

Macro seleccionar objetos de autocad


Recommended Posts

Posted

Navegando por la red he encontrado un código para seleccionar objetos de autocad, es el siguiente:

Public AcadDoc As Object

Public AcadUtil As Object

Dim objLinea As AcadObject

Dim Punto As Variant

Sub MacroSeleccion()

Set AcadDoc = GetObject(, "Autocad.Application").ActiveDocument

Set AcadUtil = GetObject(, "Autocad.Application").ActiveDocument.Utility

AcadDoc.Utility.GetEntity objLinea, Punto, "Selecione objeto: "

End Sub

Sin embargo, al ejecutarse en autocad sólo me pone que designe los objetos. No me los selecciona automáticamente.

He encontrado otro código similar, pero no me funciona. Creo que es más adecuado que el otro: es el siguiente:

Dim SS As AcadSelectionSet

Set SS = ThisDrawing.SelectionSets.Add("Prueba")

Call SS.SelectOnScreen

SS.Delete

Dim Entidad as AcadEntity

Set Entidad = SS(0)

el problema creo que está en ThisDrawing.SelectionSets.Add("Prueba")

Si alguien puede echar una mano. Lo único que deseo es seleccionar las líneas del espacio modelo de autocad para copiarlas.

Posted

Hola stopista,

las quieres copiar ¿donde y como?






Sub All_Line_Select()
Dim SOS As AcadSelectionSet
Dim objSS As AcadSelectionSet
Dim I As Integer
Dim j As Integer

For Each SOS In ThisDrawing.SelectionSets
If SOS.Name = "MySS" Then
ThisDrawing.SelectionSets("MySS").Delete
Exit For
End If
Next

ThisDrawing.SelectionSets.Add ("MySS")
Set objSS = ThisDrawing.SelectionSets("MySS")

j = 0
For I = 0 To ThisDrawing.ModelSpace.Count - 1
If ThisDrawing.ModelSpace.Item(I).ObjectName = "AcDbLine" Then
j = j + 1
End If
Next
ReDim ssobjs(0 To j - 1) As AcadEntity
j = 0
For I = 0 To ThisDrawing.ModelSpace.Count - 1
If ThisDrawing.ModelSpace.Item(I).ObjectName = "AcDbLine" Then
Set ssobjs(j) = ThisDrawing.ModelSpace.Item(I)
j = j + 1
End If
Next
objSS.AddItems ssobjs
MsgBox "Total : " & objSS.Count & " Lineas seleccionadas"

If objSS.Count < 1 Then
MsgBox "No lines and polylines selected!"
Exit Sub
End If

End Sub




[/CODE]

Aunque este foro es Excel...pero por curiosidad he estado investigando, esa macro que te pasa pone todas las lineas del espacio modelo en un selectionset, no se si es lo que buscabas, del código no estoy muy seguro, aunque uso el acad nunca habia usado el vba con el, tu dirás

Un Saludo

Posted

Buenos días Nachobm

Gracias por contestar y antes de nada, perdón por responder tan tarde (estuve algo liado).

Las líneas son un croquis o dibujo en autocad que creo a partir de unos datos de excel. Dicho dibujo lo quiero seleccionar para luego copiarlas como una imagen en excel).

Seguidamente, le ordenaría seleccionar todo el dibujo de nuevo y borrarlo para dejar el espacio modelo de autocad limpio y usarlo con unos nuevos datos cuando lo necesite.

Espero que se me haya entendido todo lo expuesto.

A continuación voy a probar el código que me proporcionas y te comento.

Ante todo, muchas gracias por tu respuesta Nacho.

Posted

No pasa nada,por el retraso , seguiré investigando cuando tenga un rato pues ahora ando algo liado yo tambien.

Un Saludo.

Archived

This topic is now archived and is closed to further replies.

  • 108 ¿Te parecen útiles los tips de las funciones? (ver tema completo)

    1. 1. ¿Te parecen útiles los tips de las funciones?


      • No
      • Ni me he fijado en ellos

  • Ayúdanos a mejorar la comunidad

    • Donaciones recibidas este mes: 0.00 EUR
      Objetivo: 130.00 EUR
  • Files

  • Download Statistics

    • Files
      184
    • Comments
      96
    • Reviews
      28

    More information about "Un juego solitario en Excel"
    Latest File
    By pegones1

    4    0

  • Crear macros Excel

  • Posts

    • Hola. Tu archivo no tiene macros. Sobre las celdas combinadas, ya que no puedes evitar su uso al no ser tus archivos, lo mejor es "des combinarlas" previo a cualquier cosa, incluso en tu misma macro (que no envías). 
    • Hola buenas tardes tengo un archivo en excel que copia varias tablas y las importa a word de manera automatica. Este selecciona las tablas en base a las filas con datos de mi columna C. pueden ser  diferentes rango de tablas. (Pero siempre mi rango es de celdas continuas y con valores continuas) Funciona muy bien. El problema que ahora tengo es que muchos archivos con tablas  tienen las celdas combinadas ya sea horizontalmento o vertical. Aqui es donde empieza mi problema ya que son formatos de origen no puedo modificarlas. Quisiera ajustar mi macro en la parte de seleccion de rango de tablas y que pueda considerar la celdas combinadas y pegarlos en word sin problema. Ya que actualmente no me pone algunas tablas o rangos, o me repite las tablas y no considera las demas. Todo esto a que en algunas no hay valores o las celdas estan combinadas.   Muchas gracias Seleccion automatica de celdas combis.xlsx
    • por si te sirve: la primera matriz (pivotarpor) al inicio los que no tienen profesor asignado (orden ascendente por omision) la segunda (2 matrices y solo unicos) en el orden de aparicion (no asignados al final) la tercera (2 matrices) omite los no asignados (tambien por orden de aparicion) unicos y suma (ayudaExcel).xlsx
    • No se si este tema va aquí, si no es así, pido disculpas. Llevo varios días dando vueltas a un fallo que me sale al exportar una tabla a xml y que no consigo resolver. El fallo que me da es que no las asignaciones no son exportables y al comprobar la asignación me dice datos no normalizados.     Libro1.xlsx
    • Buenas tardes estimado JSDJSD, muchas gracias por responder. En efecto esta parte quedo perfecta. Pero me falto indicar que la macro se ejecute dependiendo de la celda L1 ( Caliza o Mezcla). Entonces si dice Caliza aplica la macro que me enviaste, pero si dice Mezcla que haga lo siguiente: Busque el  ultimo dato de la columna K de la hoja Mezcla Adición del libro Base de datos Cementos producido 2024, con la condición de que la columna B debe ser igual a 4 y el dato lo coloque en la celda N1 de la hoja Cemento del libro Cemento. Te comento que el libro Prehomo y Base de datos Cementos producidos 2024 están en carpetas diferentes ya que estos los maneja otra área, como se enmendaría este caso por el comentarios que me enviaste de la ruta. Saludos y un fuerte abrazo   Cemento-2.xlsm
  • Recently Browsing

    • No registered users viewing this page.
×
×
  • Create New...

Important Information

Privacy Policy