Macro linea

Sub DIBUJAR()
Dim PTOXINICIO As Long
Dim PTOYINICIO As Long
Dim HCOST As Long
PTOXINICIO = Sheets("MD").Range("C2").Value
PTOYINICIO = Sheets("MD").Range("C3").Value
HCOST = Sheets("MD").Range("C6").Value
'Dim COST1 As Object
COST1 = ActiveSheet.Shapes.AddLine(PTOXINICIO, PTOYINICIO, PTOXINICIO, PTOYINICIO - HCOST)
End Sub
Hola, buenas noches!
¿Sería capaz de decirme porque no funciona esto?
"El objeto no admite esta propiedad o método"
Se trata simplemente de hacer una linea mediante variables. Aunque le ponga cifras me da el mismo error, pero no consigo localizarlo. Me imagino que será error de sintaxis...
El hecho de llamarle COST1 es porque después necesitare hacer COST1. Delete
Espero que me pueda ayudar. Gracias.
Respuesta
1
El problema es sencillo, siempre que quieras asignar un objeto a una variable, utiliza Set, en tu código quedaría así:
Sub DIBUJAR()
Dim PTOXINICIO As Long
Dim PTOYINICIO As Long
Dim HCOST As Long
PTOXINICIO = Sheets("MD").Range("C2").Value
PTOYINICIO = Sheets("MD").Range("C3").Value
HCOST = Sheets("MD").Range("C6").Value
'Dim COST1 As Object
Set COST1 = ActiveSheet.Shapes.AddLine(PTOXINICIO, PTOYINICIO, PTOXINICIO, PTOYINICIO - HCOST)
End Sub
... por cierto, cuando le pongo cifras me da el error, y me entra al depurador, pero la linea la dibuja correctamente.
Vaya... ya me imaginaba que era muy simple el problemilla.
Muchísimas gracias, me había pasado una hora larga intentando hacer una sola linea !
Un saludo!

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas