Clase ListObjects (Excel VBA)

Colección de todos los objetos ListObject en una hoja de cálculo. Para usar una variable de clase ListObjects, primero debe ser instanciado, por ejemplo


Dim los as ListObjects
Set los = ActiveSheet.ListObjects

For Each

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


Dim lstobj As ListObject
For Each lstobj In Application.ListObjects
	
Next lstobj

Add

Crea un nuevo objeto de lista.

Cuando la lista contiene encabezados, la primera fila de celdas se convertirá en Texto, si todavía no está establecida en texto.

Add (SourceType, Source, LinkSource, XlListObjectHasHeaders, Destination, TableStyleName)


Dim lstobj As ListObject
Set lstobj = ActiveSheet.ListObjects.Add

Arguments

Optional arguments

Los siguientes argumentos son opcionales

SourceType (XlListObjectSourceType) - Indica el tipo de origen de la consulta.


Valores posibles son

xlSrcExternal Origen de datos externo (sitio de Microsoft SharePoint Foundation).
xlSrcModel Modelo de PowerPivot
xlSrcQuery Consulta
xlSrcRange Rango
xlSrcXml XML

Source (Range) - When sourceType = xlSrcRange: objeto Range que representa el origen de datos.

LinkSource (Boolean) - Indica si un origen de datos externo debe vincularse al objeto ListObject.

XlListObjectHasHeaders (XlYesNoGuess) - Constante XlYesNoGuess que indica si los datos que se están importando tienen rótulos de columna.

Posibles valores de retorno son xlGuess - Excel determina si hay un encabezado y, en caso afirmativo, dónde está, xlNo - Éste es el valor predeterminado, xlYes - No se debe ordenar el rango completo.

Destination - XlListObjectSourceType


Valores posibles son

xlSrcExternal Origen de datos externo (sitio de Microsoft SharePoint Foundation).
xlSrcModel Modelo de PowerPivot
xlSrcQuery Consulta
xlSrcRange Rango
xlSrcXml XML

TableStyleName (String) - El nombre de un TableStyle; por ejemplo, "TableStyleLight1".

Count

Devuelve un valor de tipo Integer que representa el número de objetos de la colección.


Dim lngCount As Long
lngCount = ActiveSheet.ListObjects.Count

Item

Devuelve un solo objeto de una colección.

Item (Index)

Index: Nombre o número de índice del objeto.


Dim lstobjItem As ListObject
Set lstobjItem = ActiveSheet.ListObjects(Index:=1)