Compartir a través de


Método Application.DMin (Access)

Use la función DMin para determinar el valor mínimo de un conjunto especificado de registros (un dominio).

Sintaxis

expresión. DMin (Expr, Domain, Criteria)

expresión Variable que representa un objeto Application.

Parámetros

Nombre Obligatorio/opcional Tipo de datos Descripción
Expr Obligatorio String Una expresión que identifica el campo para el que quiere encontrar el valor mínimo o máximo. Puede ser una expresión de cadena que identifica un campo de una tabla o consulta, o una expresión que realiza cálculos con los datos de ese campo. En expr, puede incluir el nombre de un campo en una tabla, un control de un formulario, una constante o una función. Si expr incluye una función, puede ser integrada o definida por el usuario, pero no otra función de agregado de dominio o de agregado de SQL.
Dominio Obligatorio String Una expresión de cadena que identifica el conjunto de registros que constituyen el dominio. Puede ser un nombre de tabla o de consulta para una consulta que no requiere ningún parámetro.
Criteria Opcional Variant Una expresión de cadena opcional que se utiliza para restringir el intervalo de datos sobre el que se ejecuta la función DMin. Por ejemplo, criteria suele ser equivalente a la cláusula WHERE en una expresión SQL, sin la palabra WHERE. Si se omite criteria, la función DMin evalúa expr para todo el dominio. Cualquier campo incluido en los criterios también debe ser un campo en el dominio; De lo contrario, la función DMin devuelve un valor Null.

Valor devuelto

Variant

Comentarios

Por ejemplo, podría usar la función DMin en los controles calculados de un informe para mostrar la cantidad de pedido más pequeña para un cliente determinado. O puede utilizar la función DMin en una expresión de consulta para mostrar todos los pedidos con un descuento mayor que el descuento mínimo posible.

La función DMin devuelve los valores mínimos que cumplen el valor de criteria. Si expr identifica datos numéricos, la función DMin devuelve valores numéricos. Si expr identifica datos de cadena, se devuelve la cadena que aparece alfabéticamente en primer o en último lugar.

La función DMin omite los valores Null del campo al que hace referencia el argumento expr. Sin embargo, si ningún registro satisface los criterios o si el dominio no contiene registros, la función DMin devuelve un valor Null.

Use la función DMin para especificar criterios en la fila Criterios de una consulta, en una expresión de campo calculada en una consulta o en la fila Actualizar a de una consulta de actualización.

Nota:

Use la función DMin o la función Min en una expresión de campo calculada de una consulta de totales. Si usa la función DMin, los valores se evalúan antes de que se agrupen los datos. Si usa la función Min, los datos se agrupan antes de que se evalúen los valores de la expresión del campo.

Si solo quiere obtener el valor mínimo o máximo de todos los registros de domain, use la función Min o Max.

Aunque se puede usar la función DMin o DMax para obtener el valor mínimo o máximo de un campo de una tabla externa, quizás resulte más eficaz crear una consulta que contenga los campos que necesitemos de ambas tablas y basar el formulario o informe en esa consulta.

Ejemplo:

En el siguiente ejemplo se devuelven los valores máximo y mínimo del campo Freight (Gastos de envío) de los pedidos enviados al Reino Unido. El dominio es la tabla denominada Orders (Pedidos). El argumento criteria restringe el conjunto de registros resultante a aquéllos para los que el valor de ShipCountry (País de envío) es UK.

Dim curX As Currency 
Dim curY As Currency 
 
curX = DMin("[Freight]", "Orders", "[ShipCountry] = 'UK'") 
curY = DMax("[Freight]", "Orders", "[ShipCountry] = 'UK'")

En el ejemplo siguiente, la expresión criteria incluye una variable, dteOrderDate. Observe que en la expresión de cadena se incluyen signos de número (#), de modo que cuando las cadenas se concatenen, estos signos contendrán la fecha.

Dim dteOrderDate As Date 
Dim curX As Currency 
 
dteOrderDate = #03/30/2000# 
curX = DMin("[Freight]", "Orders", _ 
    "[OrderDate] = #" & dteOrderDate & "#")

En los ejemplos siguientes se muestra cómo usar varios tipos de criterios con la función DMin .

    ' ***************************
    ' Typical Use
    ' Numerical values. Replace "number" with the number to use.
    variable = DMin("[FieldName]", "TableName", "[Criteria] = number")

    ' Strings.
    ' Numerical values. Replace "string" with the string to use.
    variable = DMin("[FieldName]", "TableName", "[Criteria]= 'string'")

    ' Dates. Replace "date" with the string to use.
    variable = DMin("[FieldName]", "TableName", "[Criteria]= #date#")
    ' ***************************

    ' ***************************
    ' Referring to a control on a form
    ' Numerical values
    variable = DMin("[FieldName]", "TableName", "[Criteria] = " & Forms!FormName!ControlName)

    ' Strings
    variable = DMin("[FieldName]", "TableName", "[Criteria] = '" & Forms!FormName!ControlName & "'")

    ' Dates
    variable = DMin("[FieldName]", "TableName", "[Criteria] = #" & Forms!FormName!ControlName & "#")
    ' ***************************

    ' ***************************
    ' Combinations
    ' Multiple types of criteria
    variable = DMin("[FieldName]", "TableName", "[Criteria1] = " & Forms![FormName]![Control1] _
             & " AND [Criteria2] = '" & Forms![FormName]![Control2] & "'" _
            & " AND [Criteria3] =#" & Forms![FormName]![Control3] & "#")
    
    ' Use two fields from a single record.
    variable = DMin("[LastName] & ', ' & [FirstName]", "tblPeople", "[PrimaryKey] = 7")
            
    ' Expressions
    variable = DMin("[Field1] + [Field2]", "tableName", "[PrimaryKey] = 7")
    
    ' Control Structures
    variable = DMin("IIf([LastName] Like 'Smith', 'True', 'False')", "tableName", "[PrimaryKey] = 7")
    ' ***************************

Soporte técnico y comentarios

¿Tiene preguntas o comentarios sobre VBA para Office o esta documentación? Vea Soporte técnico y comentarios sobre VBA para Office para obtener ayuda sobre las formas en las que puede recibir soporte técnico y enviar comentarios.