Creación de nuevos archivos de excel a partir de información en desplegables.

Pregunta para Elsa,

Elsa, es para continuar con la creación de nuevos ficheros.

1 Respuesta

Respuesta
2

Recibido tu libro. Confírmame por mail cuál será la macro que dejarás de las 3 pensadas originalmente.

Sdos!

Con respecto a tu solicitud de que no aparezca el botón en las nuevas hojas tenemos un par de opciones:

1- Retocar el código para eliminar cualquier objeto del tipo del que hayas insertado, que aparezca en la nueva hoja creada.

2-Retirar el botón y ejecutar la macro con un atajo de teclado. Esta es mi opción y el código de la macro te quedaría así:

Sub creaHojas_CECO_Dep()
'x Elsamatilde
'atajo de teclado CTRL h (letra en mayúsc o minúsc)
'se crea hoja por cada selección de la lista Universidad
Dim celda As Range
Dim filx As Integer
Dim lib1
'solo se ejecuta desde la hoja CECO Resp
If ActiveSheet.Name <> "By CECO Department" Then Exit Sub
'se oculta el movimiento de hojas    'A PARTIR DE AQUÍ SIGUE EL RESTO DEL CODIGO
Application.ScreenUpdating = False
hox = "By CECO Department"
'SIGUE

Para asignar el atajo, busca el menú Programador (o Desarrollador según qué versión Excel tengas), Ficha Código. Selecciona la macro y desde botón Opciones ingresarás la letra tal como aparece en la imagen. La letra es a gusto. Trato de utilizar aquellas menos frecuentes y que me den una idea de la tarea (aquí se trataría de crear Hojas). Aceptar y Cerrar.

Para llamar a la macro presionarás juntas las teclas CTRL H o CTRL h (la letra puede ser en mayúsc o minúsc).

PD) Con esto doy por cerrada esta consulta. Por favor para el nuevo tema (crear nuevos ficheros) dejame una nueva consulta en el tablón.

Muchas gracias Elsa por la pronta respuesta y por tu atención, un placer como siempre.

La opción del botón no me sirve porque no lo voy a usar sólo yo, así que necesito un botón de manera que los usuarios poco familiarizados hagan click y ya corra la macro.

Muchas gracias.

Saludos!!

Entonces buscá la línea que dejo en cursiva y agregá lo que dejo en negrita:

ActiveWorkbook.ActiveSheet.Copy after:=ActiveWorkbook.ActiveSheet
'se elimina el objeto botón --- se asume que solo habrá 1 objeto en la hoja
ActiveSheet.Shapes(1).Delete
ActiveSheet.Name = [B8] & "&" & [B10] & "&" & [B12]

Esto va a resultarte siempre y cuando tu hoja origen tenga un solo objeto, no importa cual, por eso en lugar de nombrarlo utilizo el índice 1... por lo menos así se ve en tu muestra.

Sdos y no olvides valorar la respuesta para darla por cerrada e iniciar una nueva por el otro tema.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas