ejemplo de funciones

8
Ejemplo de Funciones para Bases de datos. Ocurre en ocasiones que al trabajar con nuestro listados, o con nuestras bases de datos en Excel, no son suficientemente potentes la 'funciones normales' de Excel; por ejemplo porque necesitamos una suma condicionada a varios de los campos de nuestro origen de datos. Normalmente con la función SI, o con la suma condicionada SUMAR.SI (ambas ya vistas en diferentes post de ese blog) podíamos concluir nuestros análisis, de una forma elaborada. Pero existen algunas funciones de bases de datos (así categorizadas por Excel en el listado de funciones), que aunque pocas, reproducen especialmente diseñadas para Bases de datos de Excel las funciones más básicas (SUMA, CONTAR, PROMEDIO, MAX, MIN, PRODUCTO, etc.); las diferenciamos porque estas funciones de bases de datos comienzan con 'BD' (BDCONTAR, BDSUMA, etc). Lógicamente estas funciones necesitan una manera particular de ser definidas, es decir, a la hora de incorporarle sus argumentos habrá que pensar de diferente forma -condiciones o criterios aplicados sobre distintos campos-. Los argumentos mencionados son siempre tres, para todas estas funciones: Base_de_datos es el rango de celdas que compone la lista o base de datos. Una base de datos es una lista de datos relacionados en la que las filas de información son registros y las columnas de datos, campos. La primera fila de la lista contiene los rótulos de cada columna. Nombre_de_campo indica el campo que se utiliza en la función. Nombre_de_campo puede ser texto con el rótulo encerrado entre dobles comillas, o como un número que represente la posición de la columna en la lista: 1 para la primera columna, 2 para la segunda y así sucesivamente. Criterios es el rango de celdas que contiene las condiciones especificadas. Puede utilizar cualquier rango en el argumento Criterios mientras éste incluya por lo menos un rótulo de columna y por lo menos una celda debajo del rótulo de columna que especifique una condición de columna. Es importante remarcar este argumento de Criterios, ya que para poder ejecutar estas funciones de Bases de datos, necesitaremos un rango independiente de nuestro listado de datos a analizar. Propondremos un ejemplo sencillo donde poder practicar algunas de estas funciones. Tenemos un listado sacado de nuestro diario contable, en el que tenemos información de la Fecha del registro contable, de la Cuenta de gasto empleada, si proede de una factura o de un abono y del importe (nos aparecen todos en positivo, ya que el signo no lo indica ese campo factura/abono):

Upload: ingtrespalacios

Post on 07-Sep-2015

221 views

Category:

Documents


1 download

DESCRIPTION

ok

TRANSCRIPT

  • Ejemplo de Funciones para Bases de datos.

    Ocurre en ocasiones que al trabajar con nuestro listados, o con nuestras bases de datos

    en Excel, no son suficientemente potentes la 'funciones normales' de Excel; por ejemplo

    porque necesitamos una suma condicionada a varios de los campos de nuestro origen de

    datos. Normalmente con la funcin SI, o con la suma condicionada SUMAR.SI (ambas ya

    vistas en diferentes post de ese blog) podamos concluir nuestros anlisis, de una forma

    elaborada.

    Pero existen algunas funciones de bases de datos (as categorizadas por Excel en el listado

    de funciones), que aunque pocas, reproducen especialmente diseadas para Bases de

    datos de Excel las funciones ms bsicas (SUMA, CONTAR, PROMEDIO, MAX, MIN,

    PRODUCTO, etc.); las diferenciamos porque estas funciones de bases de datos comienzan

    con 'BD' (BDCONTAR, BDSUMA, etc).

    Lgicamente estas funciones necesitan una manera particular de ser definidas, es decir, a

    la hora de incorporarle sus argumentos habr que pensar de diferente forma -condiciones

    o criterios aplicados sobre distintos campos-.

    Los argumentos mencionados son siempre tres, para todas estas funciones:

    Base_de_datos es el rango de celdas que compone la lista o base de datos. Una base de

    datos es una lista de datos relacionados en la que las filas de informacin son registros y

    las columnas de datos, campos. La primera fila de la lista contiene los rtulos de cada

    columna.

    Nombre_de_campo indica el campo que se utiliza en la funcin. Nombre_de_campo

    puede ser texto con el rtulo encerrado entre dobles comillas, o como un nmero que

    represente la posicin de la columna en la lista: 1 para la primera columna, 2 para la

    segunda y as sucesivamente.

    Criterios es el rango de celdas que contiene las condiciones especificadas. Puede utilizar

    cualquier rango en el argumento Criterios mientras ste incluya por lo menos un rtulo de

    columna y por lo menos una celda debajo del rtulo de columna que especifique una

    condicin de columna.

    Es importante remarcar este argumento de Criterios, ya que para poder ejecutar estas

    funciones de Bases de datos, necesitaremos un rango independiente de nuestro listado

    de datos a analizar.

    Propondremos un ejemplo sencillo donde poder practicar algunas de estas funciones.

    Tenemos un listado sacado de nuestro diario contable, en el que tenemos informacin de

    la Fecha del registro contable, de la Cuenta de gasto empleada, si proede de una

    factura o de un abono y del importe (nos aparecen todos en positivo, ya que el signo no

    lo indica ese campo factura/abono):

  • Plantearemos varias preguntas sobre ese listado e iremos viendo la forma de responderlas

    con estas fuciones de bases de datos.

    Si necesitamos conocer cuntos registros he tenido en mi contabilidad con la cuenta 622,

    entonces aplico sobre el listado la funcin =BDCONTAR($A$1:$D$24;"Cuenta";F4:F5)

    Nos fijaremos que el tercer argumento de criterios(F4:F5) nos dirije a unas celdas definidas

    por mi.

    Si pretendemos saber cul ha sido el acumulado en euros de todas nuestras facturas,

    aplico la funcin =BDSUMA(A1:D24;"Importe";$F$9:$F$10) Si quisiera discriminar todas

    aquellas facturas de mi listado cuyos importes estuviera comprendido entre 0 eur y 5.000

    eur resumira con la siguiente funcin

    =BDSUMA($A$1:$D$24;"Importe";F12:H13)

  • Una regla general a todas estas funciones, para saber cmo aplicarlas es: dentro del

    origen de datos seleccionado, ejectame la operacin dada por la funcion BD sobre el

    campo del segundo argumento, pero condicionada por el rango de condiciones sobre

    distintos campos.

    Funcin lgica: O

    Ejercitaremos de manera muy sencilla con otra de las funciones lgicas de Excel, la

    funcin O. Esta nos devolver VERDADERO si alguno de los argumentos es VERDADERO y

    devolver FALSO si todos los argumentos son FALSO.

    Veamos la sintaxis:

    = O(valor_lgico1; valor_lgico2; ...)

    Al igual que la funcin Y, en sta podremos incluir hasta 30 pruebas lgicas.

    Plantaremos un pequeo ejemplo con un listado de personas con Nombre y Apellido, y

    mediante la funcin O discriminaremos aquellas personas cuyo nombre comience con

    vocal, para posteriormente asignarles, mediante el SI condicional, un valor igual 5, y para

    los nombres que comiencen por consonante un valor igual a 1.

    Nuestra lista podra ser:

    http://excelforo.blogspot.com/2009/07/funcion-logica-o.html
  • Aplicando la funcin O de la siguiente manera podremos averiguar si el nombre comienza

    con vocal. Para ello anidaremos la funcin:

    =IZQUIERDA(nombre; 1)

    Para determinar con qu letra comienza cada nombre, dentro de la funcin lgica O:

    =O(IZQUIERDA(nombre;1)="A";IZQUIERDA(nombre;1)="E";IZQUIERDA(nombre;1)="I";IZQUIERD

    A(nombre;1)="O";IZQUIERDA(nombre;1)="U")

    Ahora para asignarles un valor 5 a los que comienzan con vocal, y un valor 1 con

    consonante, emplearemos la funcin SI; anidando la anterior funcin O descrita como

    argumento condicional, y seleccionando como valor de verdadero 5 y como valor de

    falso 1:

  • La funcin lgica SI(siguiendo la categorizacin propia de Excel para sus funciones.

    Explicaremos otra de las funciones lgicas de Excel, funcin Y.

    =Y(valor_lgico1;valor_lgico2; ...)

    Esta funcin nos permitir comprobar si distintas condiciones, o pruebas lgicas, se

    cumplen (son verdaderas) simultneamente; hasta un mximo de treinta!!.

    Replicaremos, empleando esta funcin Y, el ejercicio planteado en un post anterior. El

    modo de trabajo ser muy similar.

    Recordemos que disponemos de un listado de contactos con datos personales, y usando

    una tabla paralela con unas categoras comerciales, se les asignar a cada uno de ellos

    en funcin a su edad y sexo.

    y la tabla auxiliar con datos de puntuacin comercial:

  • Es entonces cuando aplicamos la funcin Y. La usaremos a modo de condicin dentro de

    una funcin SI anidada. As:

    Y(edad

  • Ejemplo para principiantes de SI anidado.

    No pretendemos olvidar ni dejar de lado a aquellos usuarios con un nivel 'principiante'. Por

    este motivo dedicaremos diversas entradas para explicar conceptos, funciones y

    herramientas para ayudar a todos nuestros lectores que busquen mejorar su nivel.

    En este caso ejercitaremos una de las funciones de Excel bsicas, la funcin condicional

    SI, de la que ya hemos hablado en posts anteriores. Recordamos su sintaxis:

    =SI(prueba_lgica;valor_si_verdadero;valor_si_falso)

    Plantearemos un supuesto prctico para poder utilizar el SI, aadiendo un poco de

    complejidad mediante el anidado de otra funcin SI. Disponemos de un listado de

    contactos con datos que los identifican, entre otros sexo y edad; datos estos que

    emplearemos para anidar nuestra funcin SI.

    disponemos a su vez de un Tabla de puntuaciones comerciales, de acuerdo a su edad y

    sexo, tomadas de una estadstica histrica:

    Para poder asociar a cada uno de nuestros contactos, a partir de este listado del que

    disponemos, emplearemos la funcin condicional SI, anidndola ya que nuestras variables

    son dos; la funcin para cada fila quedara entonces:

    http://excelforo.blogspot.com/2009/07/ejemplo-para-principiantes-de-si.htmlhttp://2.bp.blogspot.com/_t1n1W1RgAnQ/SmS7PNzPbsI/AAAAAAAAAQQ/eiGWXZGmQuE/s1600-h/otro+SI+anidado2.png
  • donde podemos ver la manera en que queda anidado la funcin:

    =SI(edad=50,

    se ejecutara el siguiente SI secundario; sobre el que actuara la segunda condicin de

    sexo (al igual que el anterior SI secundario). Podramos plantear el siguiente rbol de

    decisin para ver ms claro nuestro planteamiento:

    http://2.bp.blogspot.com/_t1n1W1RgAnQ/SmS8ODgLYpI/AAAAAAAAAQY/GMun2icoiJg/s1600-h/otro+SI+anidado3.pnghttp://4.bp.blogspot.com/_t1n1W1RgAnQ/SmTFj9NmBEI/AAAAAAAAAQg/vyC-dBb2XPY/s1600-h/otro+SI+anidado4.png