Visual Basic para Aplicaciones - Error 91

Life is soft - evento anual de software empresarial
 
Vista:

Error 91

Publicado por Jesus Amador (1 intervención) el 11/10/2018 23:15:27
Buenas tardes,

Tengo el siguiente código en VB, y a la hora de dar el click me arroja un error "Se ha producido un error '91' en tiempo de ejecucion: Variable de objeto o bloque With no establecido" y me posiciona en la parte del código que resalto, alguien me puede ayudar con el porque...

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
Private Sub btnBuscar_Click()
 
If txtNombres = Empty Then
MsgBox "Favor de ingresar criterio de busqueda", vbInformation, "Prueba"
 
End If
 
With Selection
Cells.Find(What:=txtNombres.Value, After:=ActiveCell, LookIn:=xlFormulas, LookAt:= _
xlWhole, SearchOrder:=xlByRows, SearchDirection:=xlNext, MatchCase:=False _
, SearchFormat:=False).Activate
 
End With
 
 
txtNombres = ActiveCell.Offset(0, 0)
txtRfc = ActiveCell.Offset(0, 1)
txtContraseña = ActiveCell.Offset(0, 2)
 
 
 
End Sub
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
sin imagen de perfil
Val: 24
Ha aumentado su posición en 2 puestos en Visual Basic para Aplicaciones (en relación al último mes)
Gráfica de Visual Basic para Aplicaciones

Error 91

Publicado por Yamil Bracho (16 intervenciones) el 11/10/2018 23:25:45
Selection es una propiedad de Application donde tienes el objeto seleccionado en una hoja excel. Si no se ha seleccionado nada tiene el valor de Nothing asi que debes chequear si realmente se ha seleccionado algo. Seria algo como :

1
2
3
4
5
6
7
8
9
10
if Selection Is Nothing Then
   MsgBox :"Debe sleccionar las celdas"
Else
   With Selection
       Cells.Find(What:=txtNombres.Value, After:=ActiveCell, LookIn:=xlFormulas, LookAt:= _
                        xlWhole, SearchOrder:=xlByRows, SearchDirection:=xlNext, MatchCase:=False _
       , SearchFormat:=False).Activate
    End With
End if
...
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar
sin imagen de perfil

Error 91

Publicado por Jesus Francisco (2 intervenciones) el 11/10/2018 23:47:39
Muchas gracias Yamil,

El código me funciona, pero de repente me vuelve a marcar el error, a ver si me explico...

Por ejemplo, le pongo en la palabra buscar "Nombre" y me regresa los datos correctos a los textbox, y así con varias palabras, pero de repente vuelvo a poner la palabra "Nombre" y me regresa el error... Por mencionar un patrón, pero también me marcar error con otras palabras y al cerrar el formulario y volverlo a abrir si me trae los datos, me explico?

No puedo subir el archivo porque no estoy como programador, apenas ando aprendiendo...
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 24
Ha aumentado su posición en 2 puestos en Visual Basic para Aplicaciones (en relación al último mes)
Gráfica de Visual Basic para Aplicaciones

Error 91

Publicado por Yamil Bracho (16 intervenciones) el 12/10/2018 00:08:18
Peor este error es en la misma linea ? De repente es que tienes que mover las lineas

1
2
3
txtNombres = ActiveCell.Offset(0, 0)
txtRfc = ActiveCell.Offset(0, 1)
txtContraseña = ActiveCell.Offset(0, 2)

Al Else donde chequeas si Selection es Nothing...
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar