Eliminar una linea creada por emdio de dos puntos

Hola, vuelvo a tener alguna dudilla sobre el VBA excel.
El caso es que he creado una función "REPRESENTAR" que lo que hace es coger valores de distintas celdas a modo de coordenadas:
a1x = Worksheets("New Position").Cells(30, 6).Value
a1y = ....
(como este otros tantos).
Luego, creo lineas que unen esas coordenadas, por ej:
Set myDocument = Worksheets("HOJA3")
With myDocument.Shapes.AddLine(xoffset1 + b1x, yoffset1 - b1y, xoffset1, yoffset1).Line
    .DashStyle = msoLineSingle
    .ForeColor.RGB = RGB(136, 0, 0)
End With
(Habiendo definido anteriormente YOFFSET, XOFFSET ).
Lo que ahora quiero, es hacer otra función en otro módulo, que lo que haga es borrarme esas lineas que he creado.
No tengo ni idea de cómo hacerlo!
No he encontrado mucho en los tutoriales...
Espero que me podáis ayudar.
Muchas gracias de antemano!! ;)

1 respuesta

Respuesta
1
Puedes hacerlo de la siguiente forma:
    myDocument.Shapes("Line 1").Select
    Selection.Delete
Hola, muchas gracias por la respuesta, pero...
Es que en mi código no escribo en ningún momento "Line 1", entonces... ¿cómo puedo diferenciar las lineas?,
el caso es que cada linea está escrita por coordenadas...
Gracias de nuevo
Los nombres se colocan automáticamente pero no te preocupes, con este código eliminaras todas las lineas que estén en la hoja:
Set myDocument = Worksheets("Hoja1")
myDocument.Shapes.SelectAll
Selection.Delete
Hola de nuevo!
Acabo de probar lo que me has dicho y el caso es que en mi HOJA1, donde hace las lineas, tengo también unos botones que al clickarlos crea la figura.
El problema es que cuando creo este código "SELECTALL", me borra incluso esos botones!
¿Sabrías cómo poder ayudarme?
Muchas gracias de nuevo!
No hay problema mi amigo, con este otro código se borraran solamente las lineas:
Set myDocument = Worksheets("Hoja1")
For Each sh In myDocument.Shapes
    If sh.Type = msoLine Then
        sh.Select
        Selection.Delete
    End If
Next


Saludos =)
Ya lo he probado y funciona a la perfección! Muchísimas gracias!
De todos modos no voy a finalizar la pregunta porque igual me siguen saliendo dudillas en este tema! ¿Ok?
gracias de nuevo!!  ;)
Amigo yo preferiría que finalizara la pregunta y si tiene otra duda pues puede plantear una nueva pregunta

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas