Como copiar un botón en la hoja excel con una macro asignada

En una hoja excel tengo una fila escrita y al final de esta fila un botón con una macro asignada. Me gustaría mediante otra macro, que cuando se escriba otra fila debajo se copie en esta nueva fila el botón de la anterior con su macro. Es un poco difícil de explicar, espero que me podáis ayudar. Muchas gracias

1 respuesta

Respuesta
1

Te anexo la macro que copia un botón y lo pone en la última fila con datos.

Sub Macro1()
'Por.Dante Amor
    ActiveSheet.DrawingObjects("1 Rectángulo redondeado").Select
    izq = Selection.Left
    Selection.Copy
    ActiveSheet.Paste
    u = Range("A" & Rows.Count).End(xlUp).Row
    Selection.Left = izq
    Selection.Top = Cells(u, "A").Top
End Sub

Cambia este nombre "1 Rectángulo redondeado" por el nombre que tiene tu botón.

Cambia la letra "A" por la columna que siempre tenga datos, para obtener la última fila.


Es difícil entender, para qué necesitas el mismo botón que tiene la misma macro, pero la macro que te estoy enviando hace lo que pediste.

Saludos. Dante Amor

Recuerda valorar la respuesta.

Muchas gracias por la información. Otra cosa, si hay dos botones, uno en cada fila, ¿se podría saber cual ha sido el botón seleccionado sin escribir el nombre del botón? Es decir, ¿saber la fila del botón seleccionado?

No podrías saber, solamente que cada botón tuviera algo diferente, por ejemplo: el texto que tiene adentro el botón.

Como los 2 botones ejecutan la misma macro no se sabe cuál es el que presionaste.

Saludos


Al final de mi respuesta dice: “Es una buena respuesta” y puedes seleccionar una de 3 opciones:

- Excelente

- Si

- No

¡Gracias! Ya te he puesto un Excelente

Cualquier duda me puedes consultar, tal vez en otra pregunta me puedas explicar para qué el mismo botón y pueda ayudarte con la macro para que no tengas muchos botones en la hoja.

Quiero hacer una hoja excel donde cada fila tenga datos relacionados por un mismo tema. Entonces quería poner un botón para cada fila que al hacer click saliera una formulario con la información de cada celda de dicha fila distribuidos en ese formulario. Es un poco difícil de explicar por aquí.

Eso lo puedes hacer con un solo botón, solamente tienes que elegir la fila:

Puede ser así:

fila = activecell.row

Si quieres que revise tu archivo, crea una pregunta sobre este tema, puedes dirigir la pregunta poniendo en el título para Dante Amor

Ya encontré cómo saber cuál es el botón seleccionado. Si tienes varios botones y todos apuntan a la misma macro, puedes saber el nombre del botón con esto:

Sub macro()

nombre = Application.Caller

End Sub

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas