Ejemplos de expresiones

Este artículo incluye ejemplos de expresiones. Una expresión es la combinación de operadores matemáticos o lógicos, constantes, funciones, campos de tabla, controles y propiedades que devuelve un solo valor. Las expresiones se pueden usar para calcular valores, validar datos y definir un valor predeterminado para un campo o control.

 Nota   Si bien en este artículo se describen los pasos básicos para crear expresiones, no es una guía exhaustiva del uso de las herramientas que proporciona Microsoft Office Access 2007 para crear expresiones. Para obtener más información sobre la creación de expresiones, vea el artículo Crear una expresión.

En este artículo


Información sobre las expresiones

En Office Access 2007, el término expresión es sinónimo de fórmula. Una expresión se compone de varios elementos posibles que se pueden usar, solos o en combinación, para obtener un resultado. Esos elementos son:

  • Identificadores: los nombres de campos de tabla o de controles en formularios o informes, o bien, las propiedades de esos campos o controles
  • Operadores, como + (más) o - (menos)
  • Funciones, como SUMA o PROMEDIO
  • Constantes: valores que no cambian, como cadenas de texto o números no calculados por una expresión

Las expresiones se pueden usar de varias maneras, entre otras para: realizar un cálculo, recuperar el valor de un control o proporcionar criterios a una consulta.

Para obtener más información sobre cómo y dónde se usan las expresiones, vea el artículo Crear una expresión.

Volver al principio Volver al principio

Ejemplos de expresiones que se usan en formularios e informes

Las tablas que figuran en esta sección incluyen ejemplos de expresiones que calculan un valor en un control ubicado en un formulario o informe. Para crear un control calculado, se escribe una expresión en la propiedad Origen del control del control en vez de escribirla en un campo de tabla o consulta.

En los siguientes pasos se explica cómo escribir una expresión en un control de cuadro de texto ubicado en un formulario o informe existente.

Crear un control calculado

  1. En el panel de exploración, haga clic con el botón secundario del mouse (ratón) en el formulario o informe que desee cambiar y, a continuación, haga clic en Imagen del botón Vista Diseño en el menú contextual.
  2. En el formulario o informe, haga clic con el botón secundario del mouse en el control de cuadro de texto que desee cambiar (y no en la etiqueta asociada al cuadro de texto) y, a continuación, haga clic en Propiedades en el menú contextual.
  3. Si es necesario, haga clic en la ficha Todas o la ficha Datos. En ambas fichas figura la propiedad Origen del control.
  4. Haga clic en el cuadro situado junto a la propiedad Origen del control y escriba la expresión. Por ejemplo, puede copiar y pegar una expresión de la columna denominada Expresión que aparece en la tabla de la siguiente sección.
  5. Cierre la hoja de propiedades.

Expresiones que combinan o manipulan texto

En las expresiones de la siguiente tabla se usan los operadores & (y comercial) y + (más) para combinar cadenas de texto, usar funciones incorporadas para manipular una cadena de texto o realizar alguna otra operación con texto para crear un control calculado.

Expresión Resultado
="N/A" Muestra N/A.
=[Nombre] & " " & [Apellidos] Muestra los valores que residen en los campos de tabla Nombre y Apellidos. En este ejemplo, se usa el operador & para combinar el campo Nombre, un carácter de espacio (entre comillas) y el campo Apellidos.
=Izq([Nombre de producto], 1) Usa la función Izq para mostrar el primer carácter del valor de un campo o control denominado Nombre de producto.
=Der([Código de activo], 2) Usa la función Der para mostrar los dos últimos caracteres del valor de un campo o control denominado Código de activo.
=Recortar([Dirección]) Usa la función Recortar para mostrar el valor del control Dirección sin espacios iniciales o finales.
=SiInm(EsNulo([Región]), [Ciudad] & " " & [Código postal], [Ciudad] & " " & [Región] & " " & [Código postal]) Usa la función SiInm para mostrar los valores de los controles Ciudad y Código postal si el valor del control Región es nulo; en caso contrario, muestra los valores de los controles Ciudad, Región y Código postal, separados por espacios.
=[Ciudad] & (" " + [Región]) & " " & [Código postal]

Usa el operador + y la propagación de valores nulos para mostrar los valores de los controles Ciudad y Código postal si el valor del campo d control Región es nulo; en caso contrario, muestra los valores de los campos o controles Ciudad, Región y Código postal, separados por espacios.

La propagación de valores nulos significa que si algún componente de una expresión es nulo, toda la expresión será nula. El operador + admite la propagación de valores nulos; el operador & no la admite.

Expresiones en encabezados y pies

Se usan las propiedades Página y Páginas para mostrar o imprimir números de página en los formularios o informes. Las propiedades Página y Páginas están únicamente disponibles durante la impresión o en la vista preliminar. No aparecen en la hoja de propiedades de los formularios o informes. Estas propiedades suelen usarse colocando un cuadro de texto en la sección de encabezado o pie del formulario o informe y usando una expresión como las que se muestran en la siguiente tabla.

Para obtener más información sobre el uso de los encabezados y pies en los formularios e informes, vea el artículo Insertar números de página en un formulario o informe.

Expresión Resultado de ejemplo
=[Página] 1
="Página " & [Página] Página 1
="Página " & [Página] & " de " & [Páginas] Página 1 de 3
=[Página] & " de " & [Páginas] & " Páginas" 1 de 3 Páginas
=[Página] & "/" & [Páginas] & " Páginas" 1/3 Páginas
=[País o región] & " - " & [Página] Reino Unido - 1
=Formato([Página], "000") 001
="Impreso el: " & Fecha() Impreso el: 31/12/07

Expresiones que realizan operaciones aritméticas

Se pueden usar expresiones para restar, multiplicar y dividir los valores de dos o más campos o controles. Se pueden usar asimismo para realizar operaciones aritméticas con fechas. Por ejemplo, supongamos que tiene un campo de tabla de tipo Fecha/Hora denominado FechaRequerida. En el campo, o en un control enlazado al campo, la expresión =[FechaRequerida] - 2 devuelve un valor de fecha/hora igual a dos días antes de los actuales valores del campo FechaRequerida.

Expresión Resultado
=[Subtotal]+[Transporte] Suma de los valores de los campos o controles denominados Subtotal y Transporte.
=[FechaRequerida]-[FechaEnvío] Intervalo entre los valores de fecha de los campos o controles denominados FechaRequerida y FechaEnvío.
=[Precio]*1,06 Producto del valor del campo o control denominado Precio y 1,06 (suma un 6 por ciento al valor de Precio).
=[Cantidad]*[Precio] Producto de los valores de los campos o controles denominados Cantidad y Precio.
=[TotalEmpleado]/[TotalPaísRegión] Cociente de los valores de los campos o controles denominados TotalEmpleado y TotalPaísRegión.

 Nota   Cuando se usa un operador aritmético (+, -, * y /) en una expresión y el valor de uno de los controles en la expresión es nulo, el resultado de toda la expresión será nulo. Esto se conoce como la propagación de valores nulos. Si algún registro de uno de los controles que se usan en la expresión tiene un valor nulo, se puede evitar la propagación de valores nulos convirtiendo el valor nulo en cero mediante la función Nz; por ejemplo, =Nz([Subtotal])+Nz([Transporte]).

Para obtener más información sobre la función, vea el artículo Nz (función).

Expresiones que hacen referencia a valores de otros campos o controles

A veces se necesita un valor que existe en alguna otra parte, como un campo o control ubicado en otro formulario o informe. Se puede usar una expresión para que se devuelva el valor de otro campo o control.

La siguiente tabla contiene ejemplos de expresiones que se pueden usar en los controles calculados ubicados en formularios.

Expresión Resultado
=Formularios![Pedidos]![IdPedido] Valor del control IdPedido en el formulario Pedidos.
=Formularios![Pedidos]![Subformulario Pedidos].Formulario![SubtotalPedido] Valor del control SubtotalPedido en el subformulario denominado Subformulario Pedidos del formulario Pedidos.
=Formularios![Pedidos]![Subformulario Pedidos]![IdProducto].Columna(2) Valor de la tercera columna de IdProducto, un cuadro de lista de columnas múltiples en el subformulario denominado Subformulario Pedidos del formulario Pedidos. (Observe que 0 hace referencia a la primera columna, 1 a la segunda, y así sucesivamente).
=Formularios![Pedidos]![Subformulario Pedidos]![Precio] * 1,06 Producto del valor del control Precio ubicado en el subformulario denominado Subformulario Pedidos del formulario Pedidos y 1,06 (suma el 6 por ciento al valor del control Precio).
=Parent![IdPedido] Valor del control IdPedido ubicado en el formulario principal del actual subformulario.

Las expresiones en la siguiente tabla muestran algunas de las formas de calcular controles calculados ubicados en informes. Las expresiones hacen referencia a la propiedad Informe.

Para obtener más información sobre esta propiedad, vea el artículo Informe (propiedad).

Expresión Resultado
=Informe![Factura]![IdPedido] Valor del control denominado "IdPedido" en el informe denominado "Factura".
=Informe![Resumen]![Subinforme Resumen]![Total Ventas] Calor del control denominado Total Ventas ubicado en el subinforme denominado Subinforme Resumen del informe denominado Resumen.
=Parent![IdPedido] Valor del control denominado IdPedido en el formulario principal del actual subinforme.

Expresiones que realizan un recuento, suman y calculan el promedio de valores

Se puede usar un tipo de función denominado función de agregado para calcular los valores de uno o varios campos o controles. Por ejemplo, se puede calcular un total de grupo para el pie de grupo de un informe, o bien, el subtotal de un pedido de artículos de línea en un formulario. Asimismo, se puede realizar un recuento de los elementos de uno o varios campos o calcular un promedio.

Las expresiones que figuran en la siguiente tabla muestran algunas de las formas de usar las funciones Promedio, Cuenta y Suma.

Expresión Descripción
=Promedio([Transporte]) Usa la función Promedio para mostrar el promedio de los valores de un campo de tabla o control denominado "Transporte".
=Cuenta([IdPedido]) Usa la función Cuenta para mostrar el número de registros en el control denominado IdPedido.
=Suma([Ventas]) Usa la función Suma para mostrar la suma de los valores del control denominado Ventas.
=Suma([Cantidad]*[Precio]) Usa la función Suma para mostrar la suma del producto de los valores de los controles denominados Cantidad y Precio.
=[Ventas]/Suma([Ventas])*100

Muestra el porcentaje de ventas, determinado por la división del valor del control denominado Ventas entre la suma de todos los valores del control Ventas.

 Nota   Si establece la propiedad Formato del control en Porcentaje, no incluya *100 en la expresión.

Para obtener más información sobre cómo usar las funciones de agregado y sumar los valores de campos y columnas, vea los artículos Sumar datos mediante una consulta, Contar datos mediante una consulta, Contar las filas de una hoja de datos y Mostrar totales de columna en una hoja de datos.

Expresiones que realizan un recuento, suman y buscan valores de manera selectiva mediante funciones de agregado de dominio

Se usa un tipo de función denominado función de agregado de dominio para realizar un recuento o sumar valores de manera selectiva. Un "dominio" se compone de uno o varios campos en una o varias tablas, o bien, de uno o varios controles ubicados en uno o varios formularios o informes. Por ejemplo, se pueden hacer coincidir los valores de un campo de tabla con los valores de un control ubicado en un formulario.

Expresión Descripción
=DBúsq("[Nombre de contacto]", "[Proveedores]", "[Id. de proveedor] = " & Formularios("Proveedores")("[Id. de proveedor]")) Usa la función DBúsq para devolver el valor del campo Nombre de contacto de la tabla denominada Proveedores donde el valor del campo Id. de proveedor de la tabla coincida con el valor del control Id. de proveedor ubicado en el formulario denominado Proveedores.
=DBúsq("[Nombre de contacto]", "[Proveedores]", "[Id. de proveedor] = " & Formularios![Nuevos proveedores]![Id. de proveedor]) Usa la función DBúsq para devolver el valor del campo Nombre de contacto de la tabla denominada Proveedores donde el valor del campo Id. de proveedor de la tabla coincida con el valor del control Id. de proveedor ubicado en el formulario denominado Nuevos proveedores.
=DSuma("[Importe de pedido]", "[Pedidos]", "[Id. de cliente] = 'RATTC'") Usa la función DSuma para devolver el total de los valores del campo Importe de pedido de la tabla denominada Pedidos donde el Id. de cliente sea RATTC.
=DCuenta("[Retirados]","[Activos]","[Retirados]=Sí") Usa la función DCuenta para devolver el número de valores Sí en el campo Retirados (campo de tipo Sí/No) de la tabla denominada Activos.

Expresiones que manipulan y calculan fechas

El registro de fechas y horas es una actividad fundamental de las bases de datos. Por ejemplo, se puede calcular cuántos días han transcurrido desde la fecha de factura para determinar la antigüedad de las cuentas por cobrar. Se puede aplicar formato a las fechas y horas de numerosas maneras, tal y como se muestra en la siguiente tabla.

Expresión Descripción
=Fecha() Usa la función Fecha para mostrar la fecha actual con el formato mm-dd-aa, donde mm es el mes (del 1 al 12), dd es el día (del 1 al 31) y aa representa los dos últimos dígitos del año (de 1980 a 2099).
=Formato(Ahora(), "ss") Usa la función Formato para mostrar el número de semana del año correspondiente a la actual fecha, donde ss representa las semanas del 1 al 53.
=ParcFecha("aaaa", [FechaPedido]) Usa la función ParcFecha para mostrar el año de cuatro dígitos correspondiente al valor del control denominado IdPedido.
=AgregFecha("a", -10, [Fecha prometida]) Usa la función AgregFecha para mostrar la fecha correspondiente a 10 días antes del valor del control denominado Fecha prometida.
=DifFecha("d", [FechaPedido], [FechaEnvío]) Usa la función DifFecha para mostrar la diferencia en número de días entre los valores de los controles denominados FechaPedido y FechaEnvío.
=[FechaFactura] + 30 Usa operaciones aritméticas con fechas para calcular la fecha correspondiente a 30 días después de la fecha del campo o control denominado FechaFactura.

Expresiones condicionales que devuelven uno de dos posibles valores

Las expresiones de ejemplo que figuran en la siguiente tabla usan la función SiInm para devolver uno de dos posibles valores. A la función SiInm se le pasan tres argumentos. El primer argumento es una expresión que tiene que devolver el valor True o False. El segundo argumento es el valor que se va a devolver si la expresión tiene el valor True y el tercer argumento es el valor que se va a devolver si la expresión es False.

Expresión Descripción
=SiInm([Confirmado] = "Sí", "Pedido confirmado", "Pedido sin confirmar") Usa la función SiInm para que se muestre el mensaje "Pedido confirmado" si el valor del control Confirmado es ; en caso contrario, se muestra el mensaje "Pedido sin confirmar".
=SiInm(EsNulo([País o región]), " ", [País]) Usa las funciones SiInm y EsNulo para que se muestre una cadena vacía si el valor del control País o región es nulo; en caso contrario, se muestra el valor del control País o región.
=IIf(EsNulo([Región]),[Ciudad]&" "& [CódigoPostal], [Ciudad]&" "&[Región]&" " &[CódigoPostal]) Usa las funciones SiInm y EsNulo para que se muestren los valores de los controles denominados Ciudad y Código postal si el valor del control denominado Región es nulo; en caso contrario, se muestran los valores de los campos o controles Ciudad, Región y Código postal.
=SiInm(EsNulo([FechaRequerida]) O EsNulo([FechaEnvío]), "Comprobar si falta una fecha", [FechaRequerida] - [FechaEnvío]) Usa las funciones SiInm y EsNulo para que se muestre el mensaje "Comprobar si falta una fecha" si el resultado de restar FechaEnvío de FechaRequerida es nulo; en caso contrario, se muestra el intervalo entre los valores de fecha de los controles denominados FechaRequerida y FechaEnvío.

Volver al principio Volver al principio

Ejemplos de expresiones que se usan en consultas y filtros

Esta sección contiene ejemplos de expresiones que se pueden usar para crear un campo calculado en una consulta o para proporcionar criterios a una consulta. Un campo calculado es una columna de una consulta que es el resultado de una expresión. Por ejemplo, se puede calcular un valor, combinar valores de texto como nombres y apellidos, o bien, aplicar formato a una parte de una fecha.

Se usan criterios en una consulta para limitar los registros con los que se trabaja. Por ejemplo, se puede usar el operador Entre para proporcionar una fecha inicial y una fecha final y limitar los resultados de la consulta a los pedidos enviados entre esas fechas.

En las siguientes secciones se explica cómo agregar un campo calculado a una consulta y se incluyen ejemplos de expresiones que se pueden usar en las consultas.

Agregar un campo calculado en la vista Diseño de la consulta

  1. En el panel de exploración, haga clic con el botón secundario en la consulta que desea cambiar y después haga clic en Vista Diseño en el menú contextual.
  2. Haga clic en la celda Campo de la columna en la que desee crear el campo calculado. Puede especificar un nombre para el campo seguido de dos puntos, o bien, puede escribir la expresión. Si no especifica un nombre, Access agrega Exprn:, donde n es un número secuencial.
  3. Escriba la expresión.

O bien,

En la ficha Diseño, en el grupo Configuración de consultas, haga clic en Generador para iniciar el Generador de expresiones.

Para obtener más información sobre el uso del Generador de expresiones, vea el artículo Crear una expresión.

Expresiones que manipulan el texto de una consulta o un filtro

En las expresiones de la siguiente tabla se usan los operadores & y + para combinar cadenas de texto, usar funciones incorporadas para manipular una cadena de texto o realizar alguna otra operación con texto para crear un campo calculado.

Expresión Descripción
NombreCompleto: [Nombre] & " " & [Apellidos] Crea un campo denominado NombreCompleto que muestre los valores de los campos denominados Nombre y Apellidos, separados por un espacio.
Dirección2: [Ciudad] & " " & [Región] & " " & [Código postal] Crea un campo denominado Dirección2 que muestre los valores de los campos Ciudad, Región y Código postal, separados por espacios.
InicialProducto:Izq([Nombre de producto], 1) Crea un campo denominado InicialProducto y, a continuación, usa la función Izq para mostrar en el campo denominado InicialProducto el primer carácter del valor del campo Nombre de producto.
CódigoTipo: Der([Código de activo], 2) Crea un campo denominado CódigoTipo y, a continuación, usa la función Der para mostrar los dos últimos caracteres de los valores del campo Código de activo.
CódigoÁrea: Medio([Teléfono],2,3) Crea un campo denominado CódigoÁrea y, a continuación, usa la función Medio para mostrar los tres caracteres a partir del segundo carácter del valor del campo Teléfono.

Expresiones que realizan operaciones aritméticas en campos calculados

Se pueden usar expresiones para restar, multiplicar y dividir los valores de dos o más campos o controles. Asimismo, se pueden realizar operaciones aritméticas con fechas. Por ejemplo, supongamos que tiene un campo de tipo Fecha/Hora denominado FechaRequerida. La expresión =[FechaRequerida] - 2 devuelve un valor de Fecha/Hora igual a dos días antes del valor del campo FechaRequerida.

Expresión Descripción
TransporteBásico: [Transporte] * 1.1 Crea un campo denominado TransporteBásico y, a continuación, muestra los gastos de transporte más un 10 por ciento en el campo.
ImportePedido: [Cantidad] * [PrecioUnidad] Crea un campo denominado ImportePedido y, a continuación, muestra el producto de los valores de los campos Cantidad y PrecioUnidad.
TiempoDeEspera: [FechaRequerida] - [FechaEnvío] Crea un campo denominado TiempoDeEspera y, a continuación, muestra la diferencia entre los valores de los campos FechaRequerida y FechaEnvío.
TotalExistencias: [Unidades en existencias]+[Unidades de pedido] Crea un campo denominado TotalExistencias y, a continuación, muestra la suma de los valores de los campos Unidades en existencias y Unidades de pedido.
PorcentajeTransporte: Suma([Transporte])/Suma([Subtotal]) *100

Crea un campo denominado PorcentajeTransporte y, a continuación, muestra el porcentaje de los gastos de transporte en cada subtotal. Esta expresión usa la función Suma para sumar los valores del campo Transporte y, a continuación, divide esos totales entre la suma de los valores del campo Subtotal.

Para usar esta expresión, debe convertir la consulta de selección en una consulta de totales porque debe usar la fila Total en la cuadrícula de diseño, y debe establecer la celda Total de este campo en Expresión.

Para obtener más información sobre la creación de una consulta de totales, vea el artículo Sumar datos mediante una consulta.

Si establece la propiedad Formato del campo en Porcentaje, no incluya *100.

Para obtener más información sobre cómo usar las funciones de agregado y sumar los valores de campos y columnas, vea los artículos Sumar datos mediante una consulta, Contar datos mediante una consulta, Contar las filas de una hoja de datos y Mostrar totales de columna en una hoja de datos.

Expresiones que manipulan y realizan cálculos con fechas en campos calculados

Casi todas las bases de datos almacenan y registran fechas y horas. Para trabajar con fechas y horas en Access, establezca los campos de fecha y hora de las tablas en el tipo de datos Fecha/Hora. Access puede realizar operaciones aritméticas con fechas; por ejemplo, se puede calcular cuántos días han transcurrido desde la fecha de factura para determinar la antigüedad de las cuentas por cobrar.

Expresión Descripción
Intervalo: DifFecha("d", [FechaPedido], [FechaEnvío]) Crea un campo denominado Intervalo y, a continuación, usa la función DifFecha para mostrar el número de días entre la fecha de pedido y la fecha de envío.
AñoContratación: ParcFecha("aaaa",[FechaContratación]) Crea un campo denominado AñoContratación y, a continuación, usa la función ParcFecha para mostrar el año en que se contrató a cada empleado.
MenosTreinta: Fecha( )- 30 Crea un campo denominado MenosTreinta y, a continuación, usa la función Fecha para mostrar la fecha 30 días anterior a la fecha actual.

Expresiones que realizan un recuento, suman y calculan el promedio de valores mediante funciones de agregado SQL o funciones de agregado de dominio

Las expresiones que figuran en la siguiente tabla usan funciones SQL (Lenguaje de consulta estructurado) que suman o resumen datos. A estas funciones (por ejemplo, Suma, Cuenta y Promedio) se suele hacer referencia con el término funciones de agregado.

Además de las funciones de agregado, Access proporciona asimismo funciones de agregado de "dominio" que se usan para sumar o contar valores de manera selectiva. Por ejemplo, puede realizar un recuento sólo de los valores comprendidos en un intervalo determinado o buscar un valor de otra tabla. El conjunto de funciones de agregado de dominio incluye la función DSuma, la función DCuenta y la función DProm.

Para calcular totales, a menudo necesitará crear una consulta de totales. Por ejemplo, para resumir por grupo, necesitará usar una consulta de totales. Para habilitar una consulta de totales desde la cuadrícula de diseño de la consulta, haga clic en Totales en el menú Ver.

Expresión Descripción
NúmeroFilas:Cuenta(*) Crea un campo denominado NúmeroFilas y, a continuación, usa la función Cuenta para contar el número de registros de la consulta, incluidos los registros con campos nulos (en blanco).
PorcentajeTransporte: Suma([Transporte])/Suma([Subtotal]) *100

Crea un campo denominado PorcentajeTransporte y, a continuación, calcula el porcentaje de los gastos de transporte en cada subtotal mediante la división de la suma de valores del campo Transporte y la suma de los valores del campo Subtotal. (En este ejemplo, se usa la función Suma.)

 Nota   Esta expresión debe usarse con una consulta de totales. Si establece la propiedad Formato del campo en Porcentaje, no incluya *100.

.

Para obtener más información sobre la creación de una consulta de totales, vea el artículo Sumar datos mediante una consulta.

TransporteMedio: DProm("[Transporte]", "[Pedidos]") Crea un campo denominado TransporteMedio y, a continuación, usa la función DProm para calcular el promedio de los gastos de transporte de todos los pedidos combinados en una consulta de totales.

Expresiones para trabajar con campos que contienen información que falta (campos con valores nulos)

Las expresiones que se muestran a continuación funcionan con campos que contienen información que falta, como los campos que contienen valores nulos (valores desconocidos o sin definir). Con frecuencia se puede topar con valor nulos, como un precio desconocido de un nuevo producto o un valor que un compañero olvidó agregar a un pedido. La capacidad de buscar y procesar los valores nulos puede ser una parte importante de las operaciones de las bases de datos. Las expresiones que figuran en la siguiente tabla muestran algunas de las formas comunes para abordar los valores nulos.

Expresión Descripción
PaísRegiónActual:SiInm(EsNulo([PaísRegión]), " ", [PaísRegión]) Crea un campo denominado PaísRegiónActual y, a continuación, usa las funciones SiInm y EsNulo para que se muestre una cadena vacía en ese campo si el campo PaísRegión contiene un valor nulo; en caso contrario, se muestra el contenido del campo PaísRegión.
TiempoDeEspera: =SiInm(EsNulo([FechaRequerida] - [FechaEnvío]), "Comprobar si falta una fecha", [FechaRequerida] - [FechaEnvío]) Crea un campo denominado TiempoDeEspera y, a continuación, usa las funciones SiInm y EsNulo para que se muestre el mensaje "Comprobar si falta una fecha" si el valor del campo FechaRequerida o del campo FechaEnvío es nulo; en caso contrario, se muestra la diferencia entre las fechas.
VentasSemestrales: Nz([VentasPrimerTrimestre]) + Nz([VentasSegundoTrimestre]) Crea un campo denominado VentasSemestrales y, a continuación, muestra el total de los valores de los campos VentasPrimerTrimestre y VentasSegundoTrimestre usando primero la función Nz para convertir los valores nulos en cero.

Expresión que usa una subconsulta para crear un campo calculado

Puede usar una consulta anidada, que también se conoce por el término subconsulta, para crear un campo calculado. La expresión que figura en la siguiente tabla es un ejemplo de un campo calculado generado a partir de una subconsulta.

Expresión Descripción
Cat: (SELECT [NombreCategoría] FROM [Categorías] WHERE [Productos].[IdCategoría]=[Categorías].[IdCategoría]) Crea un campo denominado Cat y, a continuación, muestra el nombre de categoría si el Id. de categoría de la tabla Categorías es el mismo que el Id. de categoría de la tabla Productos.

Expresiones que definen criterios y limitan los registros en el conjunto de resultados

Puede usar expresiones para definir los criterios de una consulta. Access devolverá únicamente las filas que cumplan los criterios. Los pasos que se describen en esta sección proporcionan información básica sobre cómo agregar criterios a una consulta. Las tablas de esta sección contienen ejemplos de criterios para hacer coincidir valores de texto y valores de fecha.

Agregar criterios a una consulta

  1. En el panel de exploración, haga clic con el botón secundario del mouse (ratón) en la consulta que desee modificar y después haga clic en Vista DiseñoImagen del botón en el menú contextual.
  2. En la fila Criterios de la cuadrícula de diseño, haga clic en la celda de la columna que desee usar y, a continuación, escriba los criterios.

Si desea disponer de un área más amplia para escribir la expresión, presione MAYÚS+F2 para mostrar el cuadro de diálogo Zoom.

O bien,

En la ficha Diseño, en el grupo Configuración de consultas, haga clic en GeneradorImagen del botón para iniciar el Generador de expresiones y crear la expresión.

 Nota   Al crear expresiones para definir criterios, no anteponga el operador = a las expresiones.

Para obtener más información sobre el uso del Generador de expresiones, vea el artículo Crear una expresión.

Expresiones que hacen coincidir valores de texto completos o parciales

Las expresiones de ejemplo que figuran en esta tabla muestran criterios que hacen coincidir valores de texto completos o parciales.

Campo Expresión Descripción
CiudadEnvío "Londres" Muestra los pedidos enviados a Londres.
CiudadEnvío "Londres" O "Hedge End" Usa el operador O para mostrar los pedidos enviados a Londres o Hedge End.
RegiónCiudadEnvío En("Canadá", "Reino Unido") Usa el operador En para mostrar los pedidos enviados a Canadá o al Reino Unido.
RegiónCiudadEnvío No "EE.UU." Usa el operador No para mostrar los pedidos enviados a países o regiones que no sean los Estados Unidos.
NombreProducto No como "C*" Usa el operador No y el carácter comodín * para mostrar los productos cuyo nombre no comience por C.
NombreCompañía >="N" Muestra los pedidos enviados a las compañías cuyo nombre comience por las letras comprendidas entre la N y la Z.
CódigoProducto Der([CódigoProducto], 2)="99" Usa la función Der para mostrar los pedidos cuyo valor de CódigoProducto acabe en 99.
NombreEnvío Como "S*" Muestra los pedidos enviados a clientes cuyo nombre comience con la letra S.

Expresiones que usan fechas en los criterios

Las expresiones que figuran en la siguiente tabla muestran el uso de fechas y funciones relacionadas en las expresiones de criterios.

Para obtener más información sobre cómo especificar y usar los valores de fecha, vea el artículo Especificar un valor de fecha u hora. Para obtener información sobre el uso de las funciones en estas expresiones de ejemplo, haga clic en los vínculos a los diversos temas de funciones.

Campo Expresión Descripción
FechaEnvío #02.02.2007# Muestra los pedidos enviados el 2 de febrero de 2007.
FechaEnvío Fecha( ) Muestra los pedidos enviados hoy.
FechaObligatoria Entre Fecha( ) Y AgregFecha("m", 3, Fecha( )) Usa el operador Entre...Y así como las funciones AgregFecha y Fecha para mostrar los pedidos requeridos entre la fecha de hoy y tres meses a partir de la fecha actual.
FechaPedido < Fecha() - 30 Usa la función Fecha para mostrar los pedidos con una antigüedad de más de 30 días.
FechaPedido Año([FechaPedido])=2007 Usa la función Año para mostrar los pedidos cuya fecha de pedido corresponda al 2007.
FechaPedido ParcFecha("t", [FechaPedido])=4 Usa la función ParcFecha para mostrar los pedidos correspondientes al cuarto trimestre de calendario.
FechaPedido SerieFecha(Año ([FechaPedido]), Mes([FechaPedido])+1, 1)-1 Usa las funciones SerieFecha, Año y Mes para mostrar los pedidos correspondientes al último día de cada mes.
FechaPedido Año([FechaPedido])= Año(Ahora()) Y Mes([FechaPedido])= Mes(Ahora()) Usa las funciones Año y Mes así como el operador Y para mostrar los pedidos correspondientes al año y al mes actuales.
FechaEnvío Entre #05.01.2007# y #10.01.2007# Usa el operador Entre...Y para mostrar los pedidos enviados después del 5 de enero de 2007 y antes del 10 de enero de 2007.
FechaObligatoria Entre Fecha() Y AgregFecha("M", 3, Fecha()) Usa el operador Entre...Y para mostrar los pedidos requeridos entre la fecha de hoy y tres meses a partir de la fecha actual.
Fecha de nacimiento Mes([FechaNacimiento])=Mes(Fecha()) Usa las funciones Mes y Fecha para mostrar a los empleados cuyo cumpleaños se celebre este mes.

Expresiones que hacen coincidir un valor que falta (valor nulo) o una cadena de longitud cero

Las expresiones que figuran en la siguiente tabla funcionan con campos que contienen información que puede faltar; es decir, los campos que contienen un valor nulo o una cadena de longitud cero. Un valor nulo representa la falta de información; no representa un cero ni ningún otro valor. Access admite esta idea de información que falta porque el concepto es fundamental para la integridad de una base de datos. En el mundo real, a menudo falta información, aunque sea temporalmente (por ejemplo, el precio aún sin determinar de un nuevo producto). Por ello, una base de datos que represente una entidad del mundo real como puede ser una empresa, deberá poder registrar la información como información que falta. Puede usar la función EsNulo para determinar si un campo o control contiene un valor nulo y puede usar la función Nz para convertir los valores nulos en cero.

Campo Expresión Descripción
RegiónEnvío Es Nulo Muestra los pedidos de los clientes cuyo campo RegiónEnvío sea nulo (información que falta).
RegiónEnvío No es Nulo Muestra los pedidos de los clientes cuyo campo RegiónEnvío contenga un valor.
Fax "" Muestra los pedidos de los clientes que no tienen una máquina de fax, lo que se indica mediante un valor de cadena de longitud cero en el campo Fax en lugar de un valor nulo (información que falta).

Expresiones que usan modelos para hacer coincidir los registros

El operador Como permite una gran flexibilidad cuando se intenta hacer coincidir filas que cumplen un modelo, porque Como puede usarse con caracteres comodón y se pueden definir modelos que Access debe hacer coincidir. Por ejemplo, el carácter comodín * (asterisco) hace coincidir una secuencia de caracteres de cualquier tipo y permite buscar con facilidad todos los nombres que empiecen por una letra. Por ejemplo, la expresión Como "S*" se usa para buscar todos los nombres que comiencen con la letra S.

Para obtener más información, vea el artículo Como (operador).

Campo Expresión Descripción
NombreEnvío Como "S*" Busca todos los registros del campo NombreEnvío que empiecen con la letra S.
NombreEnvío Como "*Importaciones" Busca todos los registros del campo NombreEnvío que terminen con la palabra Importaciones.
NombreEnvío Como "[A-D]*" Busca todos los registros del campo NombreEnvío que comiencen con la letra A, B, C ó D.
NombreEnvío Como "*ar*" Busca todos los registros del campo NombreEnvío que incluyan la secuencia de letras "ar".
NombreEnvío Como "Casa Dewe?" Busca todos los registros del campo NombreEnvío que incluyan "Casa" en la primera parte del valor y una cadena de cinco letras donde las cuatro primeras letras son "Dewe" y la última letra es desconocida.
NombreEnvío No como "A*" Busca todos los registros del campo NombreEnvío que no empiecen con la letra A.

Expresiones que hacen coincidir filas basándose en el resultado de una función de agregado de dominio

Se usa una función de agregado de dominio para sumar, contar o calcular el promedio de valores de manera selectiva. Por ejemplo, para contar sólo los valores comprendidos en un intervalo determinado o cuyo valor es Sí. O bien, para buscar un valor de otra tabla y mostrarlo. Las expresiones de ejemplo que figuran en la siguiente tabla usan funciones de agregado de dominio para realizar un cálculo con un conjunto de valores y usar el resultado como criterios de la consulta.

Campo Expresión Descripción
Transporte > (DDesvEst("[Transporte]", "Pedidos") + DProm("[Transporte]", "Pedidos")) Usa las funciones DDesvEst y DProm para mostrar todos los pedidos cuyos gastos de transporte sean mayores que el promedio más la desviación estándar de los gastos de transporte.
Cantidad > DProm("[Cantidad]", "[Detalles de pedidos]") Usa la función DProm para mostrar los productos ordenados por cantidad mayor que el promedio de las cantidades de pedido.

Expresiones que hacen coincidir basándose en los resultados de subconsultas

Se usa una subconsulta, que también se conoce por el término consulta anidada, para calcular un valor que se va a usar como criterio. Las expresiones de ejemplo que figuran en la siguiente tabla hacen coincidir las filas basándose en los resultados devueltos por una subconsulta.

Campo Expresión Muestra
PrecioUnidad (SELECT [PrecioUnidad] FROM [Productos] WHERE [NombreProducto] = "Sirope de regaliz") Productos cuyo precio sea igual que el precio del sirope de regaliz.
PrecioUnidad >(SELECT AVG([PrecioUnidad]) FROM [Productos]) Productos cuyo precio por unidad sea mayor que el promedio.
Salario > ALL (SELECT [Salario] FROM [Empleados] WHERE ([Cargo] LIKE "*Director*") OR ([Cargo] LIKE "*Vicepresidente*")) Salario de todos los representantes cuyo salario sea mayor que el de los empleados con cargos de "Director" o "Vicepresidente".
TotalPedido: [PrecioUnidad] * [Cantidad] > (SELECT AVG([PrecioUnidad] * [Cantidad]) FROM [Detalles de pedidos]) Pedidos cuyo total sea mayor que el valor de pedido medio.

Expresiones que se usan en las consultas de actualización

Las consultas de actualización se usan para modificar los datos de uno o varios campos existentes de una base de datos. Por ejemplo, puede reemplazar valores o eliminarlos completamente. En esta tabla se muestran algunas de las formas de usar expresiones en las consultas de actualización. Estas expresiones se usan en la fila Actualizar a de la cuadrícula de diseño de la consulta para el formulario que se desea actualizar.

Para obtener más información sobre la creación de consultas de actualización, vea el artículo Crear una consulta de actualización.

Campo Expresión Resultado
Título "Vendedor" Cambia un valor de texto a Vendedor.
InicioProyecto #10.08.2007# Cambia un valor de fecha al 10 de agosto de 2007.
Retirados Cambia a Sí un valor No de un campo de tipo Sí/No.
NúmeroPieza "NP" & [NúmeroPieza] Agrega NP al principio de cada número de pieza especificado.
TotalArtículoLínea [PrecioUnidad] * [Cantidad] Calcula el producto de PrecioUnidad y Cantidad.
Transporte [Transporte] * 1,5 Incrementa los gastos de transporte en un 50 por ciento.
Ventas DSuma("[Cantidad] * [PrecioUnidad]",
"Detalles de pedidos", "[IdProducto]=" & [IdProducto])
Cuando los valores de IdProducto de la actual tabla coinciden con los valores de IdProducto de la tabla Detalles de pedidos, se actualizan los totales de ventas basándose en el producto de Cantidad y PrecioUnidad.
CódigoPostalEnvío Der([CódigoPostalEnvío], 5) Trunca los caracteres situados más a la izquierda, dejando los cinco caracteres más situados a la derecha.
PrecioUnidad Nz([PrecioUnidad]) Cambia un valor nulo (valor sin definir o desconocido) a cero (0) en el campo PrecioUnidad.

Expresiones usadas en instrucciones SQL

Lengua de consulta estructurado o SQL es el lenguaje de consulta que usa Access. Todas las consultas que se crean en la vista Diseño de consulta también pueden expresarse mediante SQL. Para ver la instrucción SQL de cualquier consulta, haga clic en Vista SQL en el menú Ver. En la siguiente tabla se muestran instrucciones SQL de ejemplo que usan una expresión.

Instrucción SQL que usa una expresión Resultado
SELECT [Nombre],[Apellidos] FROM [Empleados] WHERE [Apellidos]="Cornejo" Muestra los valores de los campos Nombre y Apellidos de los empleados cuyo apellido sea Cornejo.
SELECT [IdProducto],[NombreProducto] FROM [Productos] WHERE [IdCategoría]=Formularios![Nuevos productos]![IdCategoría]; Muestra los valores de los campos IdProducto y NombreProducto de la tabla Productos para los registros donde el valor de IdCategoría coincida con el valor de IdCategoría especificado en un formulario abierto denominado Nuevos productos.
SELECT Avg([PrecioTotal]) AS [Precio total medio] FROM [Detalles de pedidos ampliados] WHERE [PrecioTotal]>1000; Calcula el precio total medio de los pedidos para los que el valor del campo PrecioTotal sea mayor que 1.000 y lo muestra en un campo denominado Precio total medio.
SELECT [IdCategoría], Count([IdProducto]) AS [NúmeroDeIdProducto] FROM [Productos] GROUP BY [IdCategoría] HAVING Count([IdProducto])>10; En un campo denominado NúmeroDeIdProducto, muestra el número total de productos de las categorías con más de 10 productos.

Volver al principio Volver al principio

Ejemplos de expresiones de valor predeterminado

Al diseñar una base de datos, quizás desee asignar un valor predeterminado a un campo o control. Access proporcionará el valor predeterminado cuando cree un nuevo registro que contenga el campo o cuando cree el objeto que contiene el control. Las expresiones que figuran en la siguiente tabla representan los mismos valores predeterminados para un campo o control.

Agregar un valor predeterminado para un campo de una tabla

  1. En el panel de exploración, haga clic con el botón secundario en la tabla que desea cambiar y después haga clic en Vista Diseño en el menú contextual.
  2. Haga clic en el campo que desee cambiar y, en la ficha General, haga clic en el cuadro de propiedad Valor predeterminado.
  3. Escriba la expresión o haga clic en el botón GenerarImagen del botón situado a la derecha del cuadro de propiedad para crear una expresión mediante el Generador de expresiones.

Si hay un control enlazado a un campo de una tabla y el campo tiene un valor predeterminado, el valor predeterminado del control tiene prioridad.

Campo Expresión Valor de campo predeterminado
Cantidad 1 1
Región "MT" MT
Región "Nueva York, N.Y." Nueva York, N.Y. (Observe que debe escribir el valor entre comillas si incluye puntuación.)
Fax "" Cadena de longitud cero que indica que, de manera predeterminada, este campo debe estar vacío en vez de contener un valor nulo.
Fecha de pedido Fecha( ) Fecha actual
FechaVencimiento Fecha() +60 Fecha a los 60 días de la fecha actual

Volver al principio Volver al principio

Ejemplos de expresiones de regla de validación de campo

Se puede crear una regla de validación para un campo o control mediante una expresión. De este modo, Access impone la regla cuando se incluyen datos en el campo o control. Para crear una regla de validación, modifique la propiedad Regla de validación del campo o control. Se recomienda establecer asimismo la propiedad Texto de validación, que contiene el texto que Access muestra cuando se infringe la regla de validación. Si no se establece la propiedad Texto de validación, Access muestra un mensaje de error predeterminado.

Agregar una regla de validación a un campo

  1. En el panel de exploración, haga clic con el botón secundario en la tabla que desea cambiar y después haga clic en Vista Diseño en el menú contextual.
  2. Haga clic en el campo que desee cambiar.
  3. Haga clic en el cuadro de propiedad Regla de validación, ubicado en la sección inferior del diseñador de tablas.
  4. Escriba la expresión o haga clic en el botón GenerarImagen del botón situado a la derecha del cuadro de propiedad para crear una expresión mediante el Generador de expresiones.

 Nota   No coloque el operador = delante de la expresión cuando cree una regla de validación.

Los ejemplos que figuran en la siguiente tabla muestran las expresiones de regla de validación para la propiedad Regla de validación y el texto asociado de la propiedad Texto de validación.

Propiedad Regla de validación Propiedad Texto de validación
<> 0 Especifique un valor distinto de cero.
0 Or > 100 El valor debe ser igual que cero o mayor que 100.
Como "K???" El valor debe constar de cuatro caracteres y comenzar por la letra K.
< #01.01.2007# Especifique una fecha anterior al 1 de enero de 2007.
>= #01.01.2007# Y < #01.01.2008# La fecha debe ser del año 2007.

Para obtener más información sobre la validación de datos, vea el artículo Crear una regla de validación para validar los datos de un campo.

Volver al principio Volver al principio

Ejemplos de expresiones de condiciones de macro

En algunos casos, quizás desee llevar a cabo una acción o una serie de acciones en una macro solamente si se cumple una condición concreta. Por ejemplo, supongamos que desea que se ejecute una acción de macro solamente si el valor del cuadro de texto Contador es 10. Para ello, use una expresión para definir la condición en la columna Condición de la macro [Contador]=10.

Agregar una condición para una acción de macro

  1. En el panel de exploración, haga clic con el botón secundario del mouse en la macro que desee cambiar y, a continuación, haga clic en Vista Diseño en el menú contextual.
  2. Si no ve la columna Condición en el diseñador de macros, en la ficha Diseño, en el grupo Mostrar u ocultar, haga clic en Condiciones.
  3. Haga clic en la celda Condición correspondiente a la acción de macro que desee cambiar y, a continuación, escriba la expresión adicional.
  4. Guarde los cambios y, a continuación, cierre la macro.

Al igual que en el caso de la propiedad Regla de validación, la expresión de la columna Condición es una expresión condicional. Su valor debe ser True o False. La acción se realizará únicamente si se cumple la condición (True).

Use esta expresión para llevar a cabo la acción Si
[Ciudad]="París" París es el valor de Ciudad en el campo en el formulario desde el cual se ejecutó la macro.
DCuenta("[IdPedido]", "Pedidos") > 35 Hay más de 35 entradas en el campo IdPedido de la tabla Pedidos.
DCuenta("*", "[Detalles de pedidos]", "[IdPedido]=" & Formularios![Pedidos]![IdPedido]) > 3 Hay más de tres entradas en la tabla Detalles de pedidos para los cuales el campo IdPedido de la tabla coincide con el campo IdPedido del formulario Pedidos.
[FechaEnvío] Entre #2-Feb-2007# Y #2-Mar-2007# El valor del campo FechaEnvío del formulario desde el cual se ejecuta la macro no es anterior al 2-Feb-2007 y no es posterior al 2-Mar-2007.
Formularios![Productos]![UnidadesEnExistencias] < 5 El valor del campo UnidadesEnStock del formulario Productos es menor que cinco.
EsNulo([Nombre]) El valor Nombre del formulario desde el que se ejecuta la macro es nulo (no tiene valor). Esta expresión es equivalente a [Nombre] Es Nulo.
[PaísRegión]="Reino Unido" Y Formularios![TotalVentas]![TotalPedidos] > 100 El valor del campo PaísRegión del formulario desde el cual se ejecuta la macro es el Reino Unido y el valor del campo TotalPedidos del formulario TotalVentas es mayor que 100.
[PaísRegión] En ("Francia", "Italia", "España") Y Longitud([CódigoPostal])<>5 El valor del campo PaísRegión del formulario desde el cual se ejecuta la macro es Francia, Italia o España, y el código postal no es de 5 caracteres de longitud.
CuadroMsj("¿Confirmar cambios?",1)=1 Se hace clic en Aceptar en un cuadro de diálogo que muestre la función CuadroMsj. Si se hace clic en Cancelar en el cuadro de diálogo, Access omite la acción.

 Nota   Para que Access omita temporalmente una acción, escriba False como condición. Esto puede resultar útil cuando intenta encontrar problemas en una macro.

Para obtener más información sobre las macros, vea los artículos Conceptos básicos de las macros en Access 2007 y Crear una macro.

Volver al principio Volver al principio

 
 
Corresponde a:
Access 2007