Excel - codigo error cuando no encuentra el dato

 
Vista:
sin imagen de perfil

codigo error cuando no encuentra el dato

Publicado por adrian (16 intervenciones) el 01/02/2016 16:03:28
Hola,gente tengo un codigo que sirve para buscar un dato, es casi igual que las funciones INDICE y COINDICIR combinados, el codigo funciona de 10! :) Pero tengo un pequeño problema que es cuando no encuentra el dato es ahi cuando me lanza un error...yo quiero que se pase ese dato si no lo encuentra...les muestro el codigo

1
2
3
4
5
6
7
8
For i = 2 To ult
    Sheets("BD-RECOPILACION").Select
    Valor_Buscado = Range("A" & i).Value
    Sheets("TD").Select
    valor = WorksheetFunction.Index(Range("A5:C105"), WorksheetFunction.Match(Valor_Buscado, Range("A5:A105"), 0), 3)
    Sheets("BD-RECOPILACION").Select
    Range("C" & i).Value = valor
Next i

Saludos
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
Imágen de perfil de xve
Val: 31
Ha mantenido su posición en Excel (en relación al último mes)
Gráfica de Excel

codigo error cuando no encuentra el dato

Publicado por xve (73 intervenciones) el 01/02/2016 16:56:25
Hola Adrian, exactamente que error te da?
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

codigo error cuando no encuentra el dato

Publicado por adrian (16 intervenciones) el 01/02/2016 17:19:52
Solo me marca esta linea de codigo

valor = WorksheetFunction.Index(Range("A5:C105"), WorksheetFunction.Match(Valor_Buscado, Range("A5:A105"), 0), 3)


Entonces comprobando identifique que es porque no encuentra el dato....Sé que este problema se soluciona con un IF pero no se desarrollarlo...Soy principiante en las librerías de excel :s
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

codigo error cuando no encuentra el dato

Publicado por agustin (149 intervenciones) el 01/02/2016 20:18:23
La verdad es que no se exactamente como funciona esa línea que pones pero se me ocurre que pongas esa línea y la siguiente dentro de un manejador de excepciones y controles la excepción que te da al no encontrar el valor.
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

codigo error cuando no encuentra el dato

Publicado por adrian (16 intervenciones) el 01/02/2016 21:58:11
Pero como hago eso...yo pense que era con
1
2
3
4
5
If  WorksheetFunction.Index(Range("A5:C105"), WorksheetFunction.Match(Valor_Buscado, Range("A5:A105"), 0), 3) = True Then
valor = WorksheetFunction.Index(Range("A5:C105"), WorksheetFunction.Match(Valor_Buscado, Range("A5:A105"), 0), 3)
Else
Exit For
End If
esto sirve ???
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

codigo error cuando no encuentra el dato

Publicado por agustin (149 intervenciones) el 01/02/2016 23:12:58
Pon esto antes de esa línea y di que pasa al ejecutarlo:
1
On Error Resume Next
Eso hace que continúe e ignore el error.
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

codigo error cuando no encuentra el dato

Publicado por adrian (16 intervenciones) el 02/02/2016 00:23:56
Gracias !!! Me funciono !!!
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