martes, 27 de noviembre de 2012

Funciones Avanzadas Parte 2

BUSCARV

Búsqueda vertical con la referencia y celdas juntas a las celdas a la derecha. Esta función checa un valor especifico contenida en la primer columna de un arreglo. La función entonces devuelve el valor en la misma fila de la columna llamada índice. En el parámetro Ordenamiento es omitido o puesto como VERDADERO, se asume que el dato es ordenado de forma ascendente. En este caso, si búsqueda de criterio exacto no se encuentra, el último valor que es menor que lo que devolverá el criterio. Si el Ordenamiento se configura a FALSE o cero, una relación directa debe ser encontrada, de lo contrario el error Error: Valor no disponible no será el resultado. Aunque con un valor de cero los datos no necesitan ser ordenados de forma ascendente.
La función de búsqueda admite expresiones regulares. Puede escribir "tod.*", por ejemplo, para buscar la primera aparición de "tod" seguido de cualquier carácter. Si desea buscar texto que también sea una expresión regular, cada carácter debe ir precedido de una doble barra inversa (\). Puede activar y desactivar la evaluación automática de expresión regular en Herramientas—> Opciones—> OpenOffice
Calc—> Calcular.
Sintaxis
=BUSCARV(criterio de búsqueda; matriz; índice; ordenado) valor buscado es el valor que se busca en la primera columna de la matriz.
Matriz es la referencia en que tienen que comprimirse dos columnas por lo menos.
El índice es el número de columna de la matriz que contiene el valor a devolver. La primera columna tiene el número 1.


Ordenado es un parámetro opcional que indica si la primera columna de la matriz está ordenada de forma ascendente. Escriba el valor lógico FALSO si la primera columna no está ordenada de forma ascendente. Las búsquedas en columna ordenadas son mucho más rápidas; asimismo, aunque no se haya encontrado el valor de búsqueda exacto, la función devuelve un valor siempre que se encuentre entre los valores máximo y mínimo de la lista ordenada. Si la lista no está ordenada, el valor de búsqueda debe coincidir exactamente. En caso contrario, la función devolverá el siguiente mensaje: Error: Valor no disponible.
Ejemplo
Desea escribir en la celda A1 el número de un plato de un menú cuyo nombre debe aparecer de forma inmediata en la celda vecina (B1). La asignación Número con nombre se encuentra en la matriz D1:E100. D1 contiene 100, E1 contiene el nombre Sopa de verduras, etc., hasta 100 elementos del menú. Los números de la columna D están ordenados de forma ascendente; por tanto, el parámetro opcional ordenado no es necesario.
Introduzca la fórmula siguiente en B1:
=BUSCARV(A1; D1:E100; 2)

Al introducir un número en A1, en B1 aparece rápidamente el texto contenido en la segunda columna de la referencia D1:E100. Si se introduce un número inexistente, el texto que aparece es el correspondiente al número inferior más cercano. A fin de que esto no ocurra, hay que introducir un último parámetro FALSO en la fórmula de forma que en caso de introducir un número inexistente la función produzca como resultado un mensaje de error.



BUSCARH
  
Busca un valor y una referencia a las celdas situadas por debajo del área seleccionada. Esta función comprueba si la primera fila de una matriz contiene un cierto valor. La función devuelve el valor situado en una fila de la matriz, indicada en Índice, en la misma columna.


La función de búsqueda admite expresiones regulares. Puede escribir "tod.*", por ejemplo, para buscar la primera aparición de "tod" seguido de cualquier carácter. Si desea buscar texto que también sea una expresión regular, cada carácter debe ir precedido de una doble barra inversa (\). Puede activar y desactivar la evaluación automática de expresión regular en Herramientas—> Opciones—> OpenOffice
Calc—> Calcular.

Sintaxis
=BUSCARH(criterio de búsqueda;matriz;índice;ordenado)
Consulte también:BUSCARV (se intercambian filas y columnas)




1 comentario:

  1. Estimado amigo. estoy intentando realizar lo mismo, con la diferencia es que la tabla matriz y la tabla de pedidos se encuentran en archivos diferentes. En office si se puede. En libreoffice 4.1.5 también se puede solo que es muy lento actualizar en la tabla de pedidos si la matriz es de 3000 filas x 15 columnas. (en office no es lento). Pero en libreoffice 4.2 simplemente la misma fórmula que uso en office y libreoffice 4.1.5 no funciona. Que puedo hacer?.
    La formula que empleo es:
    buscarv($B17,'C:\misdocumentos\[tabla1.xlsx]Hoja1'!$E$1:$AA$5001,7,0))
    y en linux con libreoffice uso esta.
    buscarv($B17,'\home\usuario\[tabla1.xlsx]Hoja1'!$E$1:$AA$5001,7,0))
    Con le repito ambas fórmulas si funcionan en office y en libreoffice 4.1.5 pero no en 4.2
    El problema es que en libreoffice 4.1.5 es demasiado lento la respuesta.

    ResponderEliminar