Buenas. Tengo en un excel una hoja estilo menú en la que quiero colocar una lista que me lleve a diferentes hojas. El problema es que hay hojas que aún no están creadas y no sé cómo hacerlo. Me explico:
En dicho excel se introducen gastos de empresas y beneficios de diferentes ventas. Pues bien, yo tengo dos hojas fijas: Empresa1 y Empresa2 y dos ventas fijas Venta1 y Venta2, y en el menú tengo un macro que me genera o bien una nueva empresa que se sitúa en medio de las fijas, o bien una nueva venta que se sitúa en medio de las fijas. De forma visual, las hojas de mi excel quedan así: Menú principal, Empresas, NuevaEmpresa, Empresa1, [Aquí se generan nuevas empresas], Empresa2, Gasto conjunto de empresas, Ventas, NuevaVenta, Tienda, [Aquí se generan nuevas ventas], Venta1, Venta2, Gasto conjunto de ventas.
Tengo esas hojas por lo siguiente: Desde el menú puedes acceder a las otras hojas gracias a enlaces. Las hojas: Empresas y Ventas es donde quiero que se muestren todas las empresas y ventas que hay, respectivamente. Además, en estas hojas tengo los respectivos macros que generan ventas y empresas. Las hojas: NuevaEmpresa y NuevaVenta son las que mi macro copia, ya que siempre permanecerán sin datos. Y dicha macro va generando empresas o ventas según corresponda. La macro que genera empresas es bastante sencilla:
Sub GenerarNuevaEmpresa()
' Sub GenerarNuevaEmpresa Macro
' Esta macro genera una nueva empresa a partir de la hoja NuevaEmpresa.
'
' Acceso directo: CTRL+e
'
Sheets("NuevaEmpresa").Select
Sheets("NuevaEmpresa").Copy After:=Sheets(5)
End Sub
Con ella copio la hoja NuevaEmpresa y la coloco siempre después de la hoja número 5 (La coloco siempre después de la Empresa1).
La macro que genera ventas es así:
Sub GenerarNuevaVenta()
'
' GenerarNuevaVenta Macro
'
'
Sheets("NuevaVenta").Select
Sheets("NuevaVenta").Copy After:=Sheets("Tienda")
End Sub
Con ella copio la hoja NuevaVenta y la coloco después de la hoja Tienda (Esta hoja nunca cambiará su nombre, por ello coloco las nuevas empresas después de esta hoja).
Entonces como este excel lo voy a entregar, no es para mí, me gustaría que tenga una apariencia más ''bonita'' y para ello voy a ocultar el panel de hojas, por tanto en el menú me gustaría crear dos lista desplegables: una que me lleve a las empresas y otra a las ventas que yo quiero, y que se actualice según vaya añadiendo empresas o ventas. Ejemplo: Tengo dos empresas. Entonces la lista de empresas del menú me da las opciones: Empresa1, Empresa2. Y luego, si genero una Empresa3, entonces quiero que la lista de empresas del menú se actualice a: Empresa1, Empresa2, Empresa3.
He pensado en darle un patrón al excel para que genere la lista. Se me ha ocurrido es decirle que haga una lista de Empresas que empieza en Empresa1 y que termina en la hoja anterior a Gasto de empresas, y para ventas otra lista que comienza en Tienda y que termina en la hoja anterior a Gasto conjunto de ventas, pero desconozco si es posible esto o cómo hacerlo... Gracias de antemano.
Featured Replies
Archivado
Este tema está ahora archivado y está cerrado a más respuestas.
Buenas.
Tengo en un excel una hoja estilo menú en la que quiero colocar una lista que me lleve a diferentes hojas. El problema es que hay hojas que aún no están creadas y no sé cómo hacerlo. Me explico:
En dicho excel se introducen gastos de empresas y beneficios de diferentes ventas. Pues bien, yo tengo dos hojas fijas: Empresa1 y Empresa2 y dos ventas fijas Venta1 y Venta2, y en el menú tengo un macro que me genera o bien una nueva empresa que se sitúa en medio de las fijas, o bien una nueva venta que se sitúa en medio de las fijas. De forma visual, las hojas de mi excel quedan así:
Menú principal, Empresas, NuevaEmpresa, Empresa1, [Aquí se generan nuevas empresas], Empresa2, Gasto conjunto de empresas, Ventas, NuevaVenta, Tienda, [Aquí se generan nuevas ventas], Venta1, Venta2, Gasto conjunto de ventas.
Tengo esas hojas por lo siguiente:
Desde el menú puedes acceder a las otras hojas gracias a enlaces.
Las hojas: Empresas y Ventas es donde quiero que se muestren todas las empresas y ventas que hay, respectivamente. Además, en estas hojas tengo los respectivos macros que generan ventas y empresas.
Las hojas: NuevaEmpresa y NuevaVenta son las que mi macro copia, ya que siempre permanecerán sin datos.
Y dicha macro va generando empresas o ventas según corresponda.
La macro que genera empresas es bastante sencilla:
Con ella copio la hoja NuevaEmpresa y la coloco siempre después de la hoja número 5 (La coloco siempre después de la Empresa1).
La macro que genera ventas es así:
Con ella copio la hoja NuevaVenta y la coloco después de la hoja Tienda (Esta hoja nunca cambiará su nombre, por ello coloco las nuevas empresas después de esta hoja).
Entonces como este excel lo voy a entregar, no es para mí, me gustaría que tenga una apariencia más ''bonita'' y para ello voy a ocultar el panel de hojas, por tanto en el menú me gustaría crear dos lista desplegables: una que me lleve a las empresas y otra a las ventas que yo quiero, y que se actualice según vaya añadiendo empresas o ventas.
Ejemplo:
Tengo dos empresas. Entonces la lista de empresas del menú me da las opciones: Empresa1, Empresa2.
Y luego, si genero una Empresa3, entonces quiero que la lista de empresas del menú se actualice a: Empresa1, Empresa2, Empresa3.
He pensado en darle un patrón al excel para que genere la lista. Se me ha ocurrido es decirle que haga una lista de Empresas que empieza en Empresa1 y que termina en la hoja anterior a Gasto de empresas, y para ventas otra lista que comienza en Tienda y que termina en la hoja anterior a Gasto conjunto de ventas, pero desconozco si es posible esto o cómo hacerlo...
Gracias de antemano.