Ayuda con macro abrir hoja

Hola:
1. Necesito que al abrir un archivo me abra la hoja 1, ya que si estoy trabajando en la hoja 5 y guardo los cambios, al abrir nuevamente el archivo me abre en la hoja 5.
2. Deseo saber si con una macro se puede poner una clave que vaya en relación con POR datos, para que un archivo se abra, por ejemplo: Nombre del archivo "PRUEBA", al abrirlo que solo me permita poner un texto, ejemplo: "JUAN PEREZ" y más abajo un campo para poner la clave de acceso, misma que deberá ir en relación al texto exrito JUAN PEREZ; supongo que es necesario un generador de claves por separado, para que yo pueda generar dichas claves. No se si me explique bien.
Por su amable atención, muchas gracias.
Atentamente: Kalim

1 Respuesta

Respuesta
1
Para la primer consulta, debes colocar en el evento Open del libro (En el Editor, objeto ThisWorkbook) la instrucción: Sheets("Hoja1"). Select (reemplaza por el nombre de la hoja que quieras).
Para la segunda consulta, puedes tener en un módulo (En el Editor, insertar módulo) una rutina de control como la que te adjunto. Utilicé inputBox pero puede ser un pequeño Userform también.
Sub Macro_claves()
Dim clave1 As String
Dim clave2, ctrlclave
clave1 = InputBox("Ingrese su nombre")
If clave1 <> "" Then
clave2 = InputBox("Ingrese su clave")
'aquí debes crear una función
'en mi ejemplo la clave debe coincidir con la 4ta y 2da letra del nombre
'ingresado, pero en mayúsculas (*** VER EXPLICACIÓN)
ctrlclave = UCase(Mid(clave1, 4, 1)) & UCase(Mid(clave1, 2, 1))
If clave2 <> ctrlclave Then
MsgBox "Clave incorrecta"
ActiveWorkbook.Close False
Application.Quit
End If
Exit Sub
End If
End Sub
Como esto lo harás al abrir el libro te quedara entonces así:
Private Sub Workbook_Open()
'selecciono la hoja que quiero de inicio
Sheets("Hoja1").Select
'ejecuto la rutina de control de claves
Macro_claves
End Sub
(***) Debes crear tu propia función para que sea personal. Si tienes dificultad para crearla enviame un correo para que te adjunte un ejemplo.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas