Quiero ir a la hoja activa previa en excel

Tengo un trabajo en Excel con varias hojas y quisiera moverme dentro de ellas regresando a la "Hoja, Activa, previa" mediante iconos (objetos) iguales en todas las hojas.
Encontré: "ActiveSheet, Previous, Select" y quise aplicarlo en una Macro y al hacerlo me sale que si falta el "with", que si la "variable", etc.
Podrías darme por favor la macro completa, porque ya casi me volví loco buscando la respuesta y a la ayuda de Office no la entiende ni Dios. Muchas Gracias. Pepe

2 respuestas

Respuesta
4
Tengo una duda sobre tu pregunta. La macro:
Sub anterior()
      ActiveSheet.Previous.Select
End Sub
Te llevará a la hoja previa, es decir, si estás en la Hoja5, entonces te llevará a la Hoja4 y así sucesivamente. Si estás en la Hoja1, te saldrá error porque no existe ninguna previa.
¿Es esto lo que necesitas?
Agradezco tu inmediata contestación, eso no tiene precio. Recibe un saludo desde Veracruz, México.
Lo que necesito es algo como ese botón de los televisores que si estás viendo el canal 5 y lo aprietas, te lleva al canal 18 que antes estabas viendo y cuando quieres regresar al canal 5, lo único que debes hacer es volver a apretarlo y así sucesivamente hasta que cambias al canal 36 y cambia el "juego" ahora entre el 5 y el 36.
Dicho en excel: Estoy en la hoja 2 y requiero consultar algo en la 5. Me voy manualmente o por cualquier medio a la 5. Después para regresar picaría el ícono de "Hoja previa" y ya estoy en la 2, ahora la hoja 5 ya es previa por lo que si quiero volver a ella, aprieto (en la hoja2) el ícono correspondiente.
Claro en todas las hojas que esté utilizando, requiero poner un ícono similar y con la misma instrucción o parecida, para volver a la hoja que antes usaba.
Entiendo. Se me ocurre hacer algo como esto:
1. En módulo colocas lo siguiente:
Public previa, actual As String  'Declarar variables públicas
Sub ir()
      Sheets(previa).Activate
End Sub
 
2. En cada hoja colocas el código:
Private Sub Worksheet_Activate()
      previa = actual
      actual = ActiveSheet.Name
End Sub

Es importante que el segundo código lo pegues en cada hoja del libro. Ahora, puedes asignar la macro ir() a un botón personalizado en la barra de herramientas o algo así.
Revisa y verás que funciona.
Tavo: Eres un Campeón
Por un lado terminé de apuntar tus fórmulas y por el otro (de inmediato) empezó a funcionar. Lo busqué por meses y con tu ayuda en dos días. Muy agradecido. Pepe
Respuesta

Y si quisiera hacer eso, pero el detalle es que pueden crear una nueva hoja con otro nombre, tendría que volver a colocar ese código, ¿no hay una manera en la que regrese a la anterior sin poner ese código?

Carlos es muy fácil y no quita tiempo poner el mismo código en la hoja u hojas nuevas, sólo trenes que abrir la sección de macros, localizar el número de la nueva hoja y pegar el código. El código lo puedes localizar aquí abajo en la T de Tavo.

Me tardé mas en escribir esto que en lo que te puedas tardar con lo que te dije. Suerte!

ok , Muchas Gracias 

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas