TopValues (propiedad)

Se aplica a
Access para Microsoft 365 Access 2024 Access 2021 Access 2019 Access 2016

Puede usar la propiedad TopValues para devolver un número especificado de registros o un porcentaje de registros que cumplen los criterios que especifique. Por ejemplo, es posible que quiera devolver los 10 valores superiores o el 25 por ciento superior de todos los valores de un campo.

Nota

La propiedad TopValues solo se aplica a las consultas de datos anexados, de creación de tabla y de selección.

Valor

El valor de la propiedad TopValues es un valor Entero que representa el número exacto de valores que se van a devolver o un número seguido de un signo de porcentaje (%) que representa el porcentaje de registros que se van a devolver. Por ejemplo, para devolver los 10 valores superiores, establezca la propiedad TopValues en 10; para devolver el 10 % superior de los valores, establezca la propiedad TopValues en 10 %.

Esta propiedad no se puede establecer directamente en el código. Se establece en la vista SQL de la ventana Consulta mediante una cláusula TOP n o TOP n PERCENT en la instrucción SQL.

También puede establecer la propiedad TopValues mediante la hoja de propiedades de la consulta o el cuadro Valores superiores bajo Herramientas en la pestaña Diseño.

Nota

La propiedad TopValues en la hoja de propiedades de la consulta y en la pestaña Diseño es un cuadro combinado que contiene una lista de valores y porcentajes. Puede seleccionar uno de estos valores o escribir cualquier valor válido en el cuadro.

Observaciones

Normalmente, el valor de la propiedad TopValues se usa junto con campos ordenados. El campo para el que quiera mostrar los valores superiores debe ser el primer campo que tenga el cuadro Ordenar seleccionado en la cuadrícula de diseño de la consulta. Un orden ascendente devuelve los registros más bajos y un orden descendente devuelve los registros de nivel superior. Si especifica que se devuelva un número específico de registros, también se devuelven todos los registros con valores que coinciden con el valor del último registro.

Por ejemplo, supongamos que un conjunto de empleados tiene los siguientes totales de ventas.

Ventas Vendedor
90 000 Leverling
80 000 Peacock
70 000 Davolio
70 000 King
60 000 Solsona
50 000 Benito

      

Si establece la propiedad TopValues en 3 con un orden descendente en el campo Ventas, Microsoft Office Access 2007 devuelve los cuatro registros siguientes.

Ventas Vendedor
90 000 Leverling
80 000 Peacock
70 000 Davolio
70 000 King

      

Nota

Para devolver los valores más altos o más bajos sin mostrar valores duplicados, establezca la propiedad UniqueValues en Sí en la hoja de propiedades de la consulta.

Ejemplo

En el ejemplo siguiente se asigna una cadena SQL que devuelve los 10 productos más caros a la propiedad RecordSource de un formulario que mostrará los diez productos más caros.

Dim strGetSQL As String
strGetSQL = "SELECT TOP 10 Products.[ProductName] " _
    & "AS TenMostExpensiveProducts, " _
    & "Products.UnitPrice " _
    & "FROM Products " _
    & "ORDER BY Products.[UnitPrice] DESC;"
Me.RecordSource = strGetSQL