Clase SortField (Excel VBA)

El objeto SortField contiene toda la información de ordenación de los objetos Worksheet, ListObjecty AutoFilter.

Los principales procedimientos de la clase SortField son Delete, SortFields.Add y SortFields.Add2

Set

Para usar una variable de clase SortField, primero debe ser instanciado, por ejemplo

Dim srtfld as SortField
Set srtfld = ActiveSheet.Sort.SortFields(Index:=1)

Los siguientes procedimientos se pueden usar para establecer variables de clase SortField : SortFields.Item, SortFields.Add, SortFields.Add2 y Sort.SortFields

For Each

A continuación, se muestra un ejemplo de cómo procesar los elementos SortField en una colección.

Dim srtfld As SortField
For Each srtfld In ActiveSheet.Sort.SortFields
	
Next srtfld

Temas

Algunos procedimientos de esta clase se han agrupado en temas y se describen en páginas temáticas separadas

Sort/Order with its procedures CustomOrder, Order y SortOn
Add with its procedures SortFields.Add y SortFields.Add2

Métodos

Los principales métodos de la clase SortField son

Delete - Quita el objeto SortField especificado de la colección SortFields.

ActiveSheet.Sort.SortFields(1).Delete

Otros Métodos

ModifyKey - Modifica el valor clave por el cual se ordenan los valores en el campo.

SetIcon - Establece un icono para un objeto SortField.

SortFields.Clear - Borra todos los objetos SortFields.

Propiedades

DataOption Especifica cómo se debe ordenar el texto del rango especificado en un objeto SortField . Valor XlSortDataOption de lectura y escritura.

ActiveSheet.Sort.SortFields(1).DataOption = xlSortNormal

Key Especifica el rango que se está ordenando. Solo lectura.

Dim rngKey As Range
Set rngKey = ActiveSheet.Sort.SortFields(1).Key

Parent Devuelve el objeto primario del objeto especificado. Solo lectura.

Dim objParent As Object
Set objParent = ActiveSheet.Sort.SortFields(1).Parent

Priority Especifica la prioridad del campo de ordenación. Lectura y escritura.

ActiveSheet.Sort.SortFields(1).Priority =

SortOnValue Devuelve el valor en el que se realiza la ordenación para el objeto SortField especificado. Solo lectura.

Dim strSortOnValue As String
strSortOnValue = ActiveSheet.Sort.SortFields(1).SortOnValue

SubField

ActiveSheet.Sort.SortFields(1).SubField =

SortFields.Count Devuelve el número de objetos de la colección. Long de sólo lectura.

Dim lngCount As Long
lngCount = ActiveSheet.Sort.SortFields.Count

SortFields.Item Devuelve un objeto SortField que representa una colección de elementos que se pueden ordenar en un libro. Solo lectura.

Dim srtfldItem As SortField
Set srtfldItem = ActiveSheet.Sort.SortFields(Index:=1)

SortFields.Parent Devuelve el objeto primario del objeto especificado. Solo lectura.

Dim objParent As Object
Set objParent = ActiveSheet.Sort.SortFields.Parent