Saltar al contenido

como soluciono error 91


Recommended Posts

Hola , muy buen dia para todo .tengo una consulta que no se como resolver

Private Sub BotValidar_Click()
Dim usuario As String
Dim Pass As Variant
Dim HojaVisible As String
Dim UsuarioExistente
Dim DatoEncontrado

Dim Rango As Range

UsuarioExistente = application.WorksheetFunction.CountIf(Sheets("Auxiliar").Range("O:O"), Me.TxtUsuario.Value)
Set Rango = Sheets("Auxiliar").Range("B:B")

   If Me.TxtUsuario.Value = "" Or Me.TxtPass.Value = 0 Then
        MsgBox " Por favor introduce usuario y contrasenia", vbExclamation
        Me.TxtUsuario.SetFocus

        'se valida que el usuario exista en la tabla
   ElseIf UsuarioExistente = 0 Then
        MsgBox " El usuario" & Me.TxtUsuario & "no existe", vbExclamation

       'En caso que el usuario exista, validamos su contrasenia
   ElseIf UsuarioExistente = 1 Then
?        DatoEncontrado = Rango.Find(What:=Me.TxtUsuario.Value, MatchCase:=False, lookat:=xlWhole).Address
    Contrasenia = CStr(Usuarios.Range(DatoEncontrado).Offset(0, 1).Value)
      

'   si el usuario y la contraseña coinciden...
        
    If LCase(CStr(Usuarios.Range(DatoEncontrado).Value)) = LCase(Me.TxtUsuario.Value) And Contrasenia = _
        Me.TxtPass.Value Then

        HojaVisible = Usuarios.Range(DatoEncontrado).Offset(0, 2).Value

     If HojaVisible = "TODAS" Then
        Call MostrarHojas

        Else
        Call OcultarHojas
        ThisWorkbook.Sheets(HojaVisible).Visible = True

    End If
         
         '        aqui va todo el codig para dar acceso a todo lo que el programador decida

Unload Me

         Else
         MsgBox " La contrasenia es invalida", vbExclamation

         End If
         End If

End Sub

 

 

En esta  instruccion  indicada con ?       me arroja error 91.Variable de objeto o bloque with no establecido, como lo soluciono??
 

Enlace a comentario
Compartir con otras webs

El método Find da error cuando no encuentra la celda con el valor buscado.

Prueba así y si no te funciona, sube el archivo.

DatoEncontrado = Usuarios.Rango.Find(What:=Me.TxtUsuario.Value, MatchCase:=False, lookat:=xlWhole).Address

 

Enlace a comentario
Compartir con otras webs

Gracias antoni  probare de revisar esto que decis pero estoy seguro que el dato esta  en la tabla...... retomando , luego de revisar encontre el error estaba en la 4ta instruccion:Set Rango = Sheets("Auxiliar").Range("B:B"), el rango era ("O,O") y ademas borre la palabra Usuarios delante de .Rango y salio andando de 10 , bueno gracias de todas formas seguire depurando mi proyecto , hasta la proxima consulta saludo agradecidoLuis

Enlace a comentario
Compartir con otras webs

Archivado

Este tema está ahora archivado y está cerrado a más respuestas.

×
×
  • Crear nuevo...

Información importante

Echa un vistazo a nuestra política de cookies para ayudarte a tener una mejor experiencia de navegación. Puedes ajustar aquí la configuración. Pulsa el botón Aceptar, si estás de acuerdo.