FUNCIONES CAMPO CALCULADO

En el CAPÍTULO ANTERIOR aprendiste que un campo calculado es todo campo cuyos valores se obtengan a través de un cálculo. Pueden resultar de una expresión simple (como puede ser una suma) o de expresiones complejas, que contengan funciones. En ESTE CAPÍTULO veremos que Access nos permite incluir un elemento más en la creación de expresiones: las funciones dentro de un campo calculado.

Las funciones son elementos de cálculo que generan un resultado con base en los cálculos que le hayan sido asignados. Access posee una lista muy extensa de funciones para los tipos de campo: valores de texto, fecha/hora, moneda o numéricos, que se pueden aplicar dentro de las expresiones para obtener resultados particulares. A continuación, veremos cómo trabajar con las funciones de mayor utilidad.

LAS FUNCIONES DE TEXTO

Esta función posibilita manipular textos. Los resultados dependen de la función aplicada y de los valores utilizados, por lo tanto, debemos tener en cuenta que el resultado de una función siempre tendrá un tipo de dato único, es decir, que no se deben mezclar en la misma sintaxis una función y una expresión aritmética, ya que de por sí, dará error.

A continuación, analizaremos las funciones de texto más utilizadas en el contexto de una consulta de selección al crear un campo calculado:

Minús:

Convierte la cadena de caracteres de un campo en minúsculas con la sintaxis Minús([Campo]). El texto Minús representa el nombre de la función e indica el tipo de operación que efectúa, que, en este caso, es la conversión de texto en minúsculas. Los paréntesis encierran sus argumentos, que son los datos que necesita cada función para realizar los cálculos que le competen.

En este caso, posee solamente un argumento, que es el nombre de un campo. Luego de escribir la función y ejecutar la consulta, se mostrarán los valores del campo seleccionado en minúsculas. En nuestro ejemplo, serán los apellidos de los clientes registrados.

Para esto, crearemos una nueva consulta de la tabla CLIENTES con los campos (Idcliente, Nombre y Apellidos). Seguidamente en la grilla (dentro de la celda donde indica el campo) introduciremos lo siguiente:

Apellidos en minúscula:Minús([Apellidos])

En el ejemplo podemos observar que dentro de la grilla de la consulta insertamos la fórmula de la función que deseamos ejecutar.
Este es el resultado de la consulta que acabamos de ejecutar. Al utilizar las funciones de texto todos los caracteres del campo calculado se han convertido a minúsculas.

Acabamos de insertar un nuevo campo que nos dará el resultado de la función deseada. Una vez realizada la ejecución de la consulta comprobaremos que el cambio se ha realizado correctamente.

Este es el resultado de la consulta que acabamos de ejecutar. Al utilizar las funciones de texto todos los caracteres del campo calculado se han convertido a minúsculas.
Este es el resultado de la consulta que acabamos de ejecutar. Todos los caracteres del campo calculado se han convertido a minúsculas.

Mayús:

Este tipo de funciones convierte el campo calculado en cadenas de texto en mayúsculas, sin importar si dentro de ella existen signos de puntuación. Su sintaxis es Mayús([Campo]) y posee un único argumento, que es el campo que se convertirá en mayúsculas.

En este ejemplo, como el campo apellidos tiene todos los caracteres en mayúscula, aunque la ejecución de la consulta fuere correcta no apreciaríamos los resultados, por tanto, vamos a convertir en mayúsculas el campo anterior, y para esto aplicaremos la siguiente sintaxis:

Apellidos en mayúscula:Mayús([Apellidos_en_minúscula])

En el ejemplo podemos observar que dentro de la grilla de la consulta insertamos la fórmula de la función que deseamos ejecutar.
En el ejemplo podemos observar que dentro de la grilla de la consulta insertamos la fórmula de la función que deseamos ejecutar.

Hemos insertado un nuevo campo que nos dará el resultado de la función deseada. Una vez realizada la ejecución de la consulta comprobaremos que el cambio se ha realizado correctamente.

Este es el resultado de la consulta que acabamos de ejecutar. Todos los caracteres del campo se han convertido a mayúsculas.
Este es el resultado de la consulta que acabamos de ejecutar. Todos los caracteres del campo se han convertido a mayúsculas.

Medio:

Dentro de las funciones de texto podemos encontrar esta función que permite obtener una determinada cantidad de caracteres incluidos dentro de una cadena de texto en un campo calculado. Su sintaxis es: Medio(Cadena;Iniciar).

El argumento Cadena representa la cadena de texto de la cual se extraerán los caracteres. Iniciar indica la posición del primer carácter a partir del cual extraerá el resto de la cadena.

Supongamos por un momento que solamente nos hiciesen falta los 3 últimos dígitos de la identificación del cliente para asociarlo a otros campos. Para esto nos bastará con la función "medio" y la siguiente sintaxis en un nuevo campo:

Función:Medio([Codcliente];7)

En el ejemplo podemos observar que dentro de la grilla de la consulta insertamos la fórmula de la función que deseamos ejecutar.
En el ejemplo podemos observar que dentro de la grilla de la consulta insertamos la fórmula de la función que deseamos ejecutar.

En el ejemplo acabamos de insertar un nuevo campo que nos dará el resultado de la función deseada. Una vez realizada la ejecución de la consulta comprobaremos que el cambio se ha realizado correctamente.

Este es el resultado de la consulta que acabamos de ejecutar. Hemos reducido a los 3 últimos caracteres del campo de identificación de cliente.
Este es el resultado de la consulta que acabamos de ejecutar. Hemos reducido a los 3 últimos caracteres del campo de identificación de cliente.

Concatenación:

Posibilita unir cadenas de texto a través del carácter &. Por ejemplo, para unir apellidos y nombres en un solo campo, tendríamos que escribir la expresión [Apellidos]&[Nombre]. Sin embargo, esto nos dará como resultado el apellido y nombre de cada cliente sin ninguna separación. Entonces... ¿Cómo podemos poner una separación entre los dos campos?.

Es muy sencillo, bastará con ingresar un espacio en blanco entre comillas, tal y como podemos observar en la siguiente sintaxis:

Nombre_y_Apellidos:([Apellidos]&" "&[Nombre])

En el ejemplo podemos observar que dentro de la grilla de la consulta insertamos la fórmula de la función que deseamos ejecutar.
En el ejemplo podemos observar que dentro de la grilla de la consulta insertamos la fórmula de la función que deseamos ejecutar.

En el siguiente ejemplo acabamos de insertar un nuevo campo que nos dará el resultado de la función deseada. Una vez realizada la ejecución de la consulta comprobaremos que el cambio se ha realizado correctamente.

Este es el resultado de la consulta que acabamos de ejecutar. Hemos juntado los caracteres del campo Apellidos y campo Nombre en un solo campo.
Este es el resultado de la consulta que acabamos de ejecutar. Hemos juntado los caracteres del campo Apellidos y campo Nombre en un solo campo.

Pero. ¿Cómo puedo hacer que access me separe con una coma los apellidos del nombre?.

La fórmula sería insertar una coma entre las dos comillas. En el ejemplo anterior la sintaxis sería así:

Nombre_y_Apellidos:([Apellidos]&","&[Nombre])

Este es el resultado de la consulta que acabamos de ejecutar. Hemos juntado los caracteres del campo Apellidos y campo Nombre en un solo campo y para diferenciarlos se ha insertado un coma entre el último apellido y el nombre.
Este es el resultado de la consulta que acabamos de ejecutar. Hemos juntado los caracteres del campo Apellidos y campo Nombre en un solo campo y para diferenciarlos se ha insertado un coma entre el último apellido y el nombre.

Longitud:

Indica la cantidad de caracteres que posee cada registro de un campo. Su sintaxis es Longitud([Campo]).

El texto correspondiente al argumento Campo será al cual le contabilizaremos la cantidad de caracteres que posee.

Por ejemplo queremos saber la longitud en caracteres del campo "Nombre" de la tabla CLIENTES. En este caso la sintaxis sería así:

Caracteres:longitud([Nombre])

En el ejemplo podemos observar que dentro de la grilla de la consulta insertamos la fórmula de la función que deseamos ejecutar. En este caso y para que se vea más claro el ejemplo, se pueden desactivar de la grilla las diferentes opciones de los ejemplos anteriores para que no se vean en el resultado.
En el ejemplo podemos observar que dentro de la grilla de la consulta insertamos la fórmula de la función que deseamos ejecutar. En este caso y para que se vea más claro el ejemplo, se pueden desactivar de la grilla las diferentes opciones de los ejemplos anteriores para que no se vean en el resultado.

Se ha insertado un nuevo campo que nos dará el resultado de la función deseada. Una vez realizada la ejecución de la consulta comprobaremos que el cambio se ha realizado correctamente. Recomendamos que desactives de la grilla el campo "mostrar" de los ejemplos anteriores para ver mejor el resultado.

Este es el resultado de la consulta que acabamos de ejecutar. Debemos recordar que los espacios en blanco cuenta como un carácter más.
Este es el resultado de la consulta que acabamos de ejecutar. Debemos recordar que los espacios en blanco cuenta como un carácter más.
RECUERDA QUE...
Cuando las funciones se utilizan en consultas, es necesario ejecutarlas desde el grupo Resultados de la ficha Diseño, para poder visualizar los resultados en el campo calculado. En cambio, cuando se aplican a controles de formularios, bastará con situarnos en la Vista Formularios o Presentación para poder acceder a los resultados.
loading...
SUBIR

FUNCIONES FECHA / HORA

Access posee diferentes funciones para trabajar con fechas como ya hemos visto en la lección de consultas. A continuación, analizaremos las más utilizadas:

Fecha: 

Esta clase de funciones muestra la fecha configurada en el sistema en el momento de la consulta en el campo calculado. Su sintaxis es Fecha(), no posee argumentos y también suele emplearse en los formularios o informes. Permite sumarle o restarle a la fecha actual valores numéricos que representan días.

Para mostrarte un ejemplo de cómo funciona es sencillo. Primero crearemos una nueva consulta con la tabla "ARTÍCULOS" y utilizaremos los campos (Descripción y Fechapedido).

Ahora supongamos que los pedidos que tengo en la tienda, el proveedor me da un margen de pago a 30 días. ¿Cómo podría calcular el día exacto que tengo como límite de pago?.

El segundo caso es calcular los días de antigüedad que tengo un producto a la venta. ¿Cómo puedo crear un campo que me indique los días que han pasado?.

En el primer caso es muy sencillo, basta con poner el campo de referencia y sumarle 30:

pago a 30 días:[Fechapedido]+30

En el segundo caso tenemos que poner la fecha actual y restale el campo de referencia, de esta forma nos calculará los días de antigüedad que tiene el producto en nuestra tienda:

Antigüedad pedido días:Fecha()-[Fechapedido]

En el ejemplo podemos observar que dentro de la grilla de la consulta insertamos la fórmula de la función que deseamos ejecutar.
En el ejemplo podemos observar que dentro de la grilla de la consulta insertamos la fórmula de la función que deseamos ejecutar.

En el ejemplo acabamos de insertar un nuevo campo que nos dará el resultado de la función deseada. Una vez realizada la ejecución de la consulta comprobaremos que el cambio se ha realizado correctamente. Por cierto, la fecha actual en la que se ha hecho el cálculo es 14/07/2019. 🙂

Este es el resultado de la consulta que acabamos de ejecutar. Por un lado hemos calculado el pago a 30 días desde la fecha del pedido, y por otro lado hemos calculado la antigüedad del producto.
Este es el resultado de la consulta que acabamos de ejecutar. Por un lado hemos calculado el pago a 30 días desde la fecha del pedido, y por otro lado hemos calculado la antigüedad del producto.
RECUERDA QUE...
La utilización de la función Fecha() es buena para utilizarla especialmente en los informes, ya que pone la fecha actual en la que lo imprimes o visualizas. Sin embargo, no es muy positivo en las consultas, ya que siempre se actualiza a la fecha actual. Es decir, no podemos poner en en campo "Fechapedido" la sintaxis Fecha() porque siempre sería la fecha actual y no coincidiría con la del pedido.

Año: 

Muestra como resultado el año de una fecha. Su sintaxis es Año(Fecha). El argumento Fecha es la fecha de la cual se obtendrá el año correspondiente.

Por ejemplo, si deseamos obtener el año de la fecha actual, debemos escribir la expresión =Año(Fecha()).

El resultado será solamente el año que se corresponda con la fecha que tenga configurada actualmente el ordenador.

Mes: 

Para visualizar el mes que se corresponda con una determinada fecha. Su sintaxis es Mes(Fecha).

El único argumento que necesita es una fecha, que puede ser la actual o una establecida entre numerales.

Nombre Mes:

Muestra el nombre del mes que se corresponda con el número asignado. Su sintaxis es NombreMes(mes) y posee solamente un argumento que consta del número del mes.

RECUERDA QUE...
El argumento Mes, de la función NombreMes, siempre debe ser numérico y se corresponde con la numeración universal de los meses del año.
En el ejemplo podemos observar que dentro de la grilla de la consulta insertamos la fórmula de la función que deseamos ejecutar.
En el ejemplo podemos observar que dentro de la grilla de la consulta insertamos la fórmula de la función que deseamos ejecutar.

En el siguiente ejemplo acabamos de insertar un nuevo campo que nos dará el resultado de la función deseada. Una vez realizada la ejecución de la consulta comprobaremos que el cambio se ha realizado correctamente.

Este es el resultado de la consulta que acabamos de ejecutar. Hemos separado el año y el mes en el que se adquirió el producto.
Este es el resultado de la consulta que acabamos de ejecutar. Hemos separado el año y el mes en el que se adquirió el producto.

DíaSemana:

Representa el día de la semana de una fecha especificada. Su sintaxis es DíaSemana(fecha), la cual posee solamente el argumento fecha, de donde se extraerá el número correspondiente al día de la semana, cabe recordar que el primer día de la semana es "Domingo" y que solo extraerá el número, no el día escrito.

RECUERDA QUE...
Podemos utilizar campos como fechas, pero en caso de utilizar fechas para que access pueda reconocerlas como tal, deben ir entre "#". (#01/01/2019#).

Día: 

Access también permite extraer el número correspondiente a los días de una fecha. Su sintaxis es Día(Fecha), donde el único argumento es la fecha sobre la cual se extraerá el número del día.

Por ejemplo, si el día actual es 14/07/2019 el resultado del campo Día(#14/07/2019#) es 14.

También podemos incluir la función Fecha como argumento de la función Día a través de la sintaxis Dia(Fecha()).

Hora:

Extrae el valor correspondiente a las horas de una fecha. Su sintaxis es Hora(hora), donde el único argumento es un horario que puede tener horas, minutos y segundos.

Por ejemplo, si actualmente son las 13:30:21, el resultado de aplicar la función Hora sobre la HoraActual en la sintaxis =Hora(HoraActual) es 13.

Minuto: 

Extrae el valor correspondiente a los minutos. Su sintaxis es Minuto(hora). El único argumento que necesita es un horario.

Por ejemplo, si la hora que tiene configurada el ordenador es 12:22:07, el resultado de la sintaxis =Minuto(HoraActual()) es 22.

Segundo: 

Para extraer los segundos de un horario a través de la función. Su sintaxis es Segundo(hora), donde el único argumento es un horario.

Por ejemplo, si queremos saber el valor de los segundos en el horario 21:39:14, tenemos que escribir la expresión =Segundo(#21:39:14#) y el resultado será 14.

En el ejemplo podemos observar que dentro de la grilla de la hoja de propiedades de un formulario insertamos la fórmula de la función que deseamos ejecutar.
En el ejemplo podemos observar que dentro de la grilla de la hoja de propiedades de un formulario insertamos la fórmula de la función que deseamos ejecutar.

El siguiente ejemplo hemos insertado un nuevo campo que nos dará el resultado de la función deseada. Una vez nos pongamos en vista presentación o vista formulario comprobaremos que el cambio se ha realizado correctamente.

Este es el resultado de la en vista presentación de un formulario. Cada vez que visualicemos un registro marcará la hora actual que tengamos en el ordenador, pero no se grabará, es decir, que la hora va cambiando constantemente.
Este es el resultado de la en vista presentación de un formulario. Cada vez que visualicemos un registro marcará la hora actual que tengamos en el ordenador, pero no se grabará, es decir, que la hora va cambiando constantemente.
RECUERDA QUE...
Para utilizar las funciones que brinda Access, debemos respetar la sintaxis correspondiente a cada una de ellas. Como regla principal, debemos tener en cuenta que todas las funciones comienzan con el signo igual (=), que le indica al programa que estamos frente a un cálculo. La lógica de las funciones es igual a la utilizada en Excel, por eso si conocemos esta aplicación no encontraremos dificultades en las funciones de Access.
loading...
SUBIR

¿CÓMO CONTINUAR?

En el CAPÍTULO ANTERIOR aprendiste que un campo calculado es todo campo cuyos valores se obtengan a través de un cálculo. Pueden resultar de una expresión simple (como puede ser una suma) o de expresiones complejas, que contengan funciones.

En ESTE CAPÍTULO has aprendido las funciones de texto y las funciones de fecha / hora

En el CAPÍTULO SIGUIENTE Veremos que Access también nos permite realizar la suma total de valores de un campo. Para ello, el programa emplea una consulta de selección que convierte luego en consulta de resumen.

LOS CAMPOS CALCULADOS
LOS CAMPOS CALCULADOS
FUNCIÓN TOTAL
FUNCIÓN TOTAL

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Utilizamos cookies propias y de terceros para obtener datos estadísticos de la navegación de nuestros usuarios y mejorar nuestros servicios. Si acepta o continúa navegando, consideramos que acepta su uso. Puede cambiar la configuración u obtener más información en política de cookies

ACEPTAR
Aviso de cookies