¿Un bug en la función buscarv?

29/01/2008 - 12:07 por lobocom | Informe spam
Hola a todos,

Me inscrito en este grupo precisamente para comentar este problema que
le dado mil vuelta y no le veo otra solución salvo un "bug" de la
función BUSCARV. Así que me gustaría que si alguien puede probarlo
(yo uso Excel del Office 2003), y ver si se produce el mismo problema.

El problema es el siguiente. Tengo una columna con los siguientes
valores:

0,001
1,901
2,511
3,471
3,791
4,511
4,951
6,951

Sobre esa columna realizo la siguiente búsqueda, usando BUSCARV,
=BUSCARV("unvalor";"rangodelacolumna";1;VERDADERO)

donde "unvalor" es otra celda donde le doy un valor comprendido entre
0 y 6,951
y "rangodelacolumna" es el rango de casillas donde está los valores
arriba indicados.

Según esta fórmula cuando doy un valor desde 0,001 hasta 1,900, me
devuelve el primer valor de la columna, es decir, 0,001. Si doy un
valor desde 1,901 hasta 2,510, me devuelve el valor de 1,901, y así en
teoría hasta el final.
Por darle una notación que usaba al estudiar matemáticas, se crean
rangos de este tipo:
[0,001, 1,900] -> 0,001
[1,901, 2,510] -> 1,901
...

El problema es cuando compruebo el rango que termina en 4,951, aquí
ocurre lo siguiente:
[4,511, 4,951] -> 4,511
[4,952, 6,950] -> 4,951

Cuando debería haber sido, con en los rango iniciales:

[4,511, 4,950] -> 4,511
[4,951, 6,950] -> 4,951

No entiendo porqué en este número precisamente, el 4,951, se rompe el
criterio. Por cierto, que este problema también me sucede si uso la
fórmula COINCIDIR, con el parámetro 1.

¿Alguién puedes explicarme que sucede? ¿podeis comprobar si os pasa
lo mismo?

He probado a poner todos los valores de la columna con la formula
=valor(), por si lo interpretaba como texto en lugar de número, pero
sin cambios.

Gracias, espero vuestras respuestas.
 

Leer las respuestas

#1 victorbcn1952
29/01/2008 - 13:12 | Informe spam
He probado esta fórmula y a mí no me da ningún problema:

=BUSCARV(B9;A:A;1;VERDADERO)

Tengo tus cifras en A1:A8, voy introduciendo valores en B9 y siempre
me da el resultado esperado.

Posible 'causa': ¿Has comprobado que 4,951 sea realmente 4,951? Te lo
digo porque ya sabrás que si tienes formateada la celda como 3
decimales, y esa celda tiene 4,951457639 (por ejemplo), aunque tú veas
4,951, Excel trabaja internamente con todos los decimales (no sólo con
3). El resultado que te devuelve =BUSCARV es correcto, por lo tanto.

?

Preguntas similares