Clase Slicer (Excel VBA)

La clase Slicer representa una segmentación de datos en un libro.

Los principales procedimientos de la clase Slicer son Copy, Delete y Slicers.Add

Set

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

Dim slc as Slicer
Set slc = ActiveWorkbook.ActiveSlicer

Los siguientes procedimientos se pueden usar para establecer variables de clase Slicer : Slicers.Item, Slicers.Add, Workbook.ActiveSlicer, ListObject.Slicers, PivotTable.Slicers y SlicerCache.Slicers

For Each

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

Dim slc As Slicer
For Each slc In Application.Slicers
	
Next slc

Métodos

Los principales métodos de la clase Slicer son

Copy - Copia la segmentación de datos especificada en el Portapapeles.

ActiveWorkbook.ActiveSlicer.Copy

Delete - Elimina la segmentación de la colección y la quita de la colección de segmentadores asociada.

ActiveWorkbook.ActiveSlicer.Delete

Slicers.Add - Crea un nuevo objeto Slicer y devuelve un objeto Slicer.

Dim strSlicerDestination As String: strSlicerDestination = 
Dim slc As Slicer
Set slc = ActiveCell.PivotTable.Slicers.Add(SlicerDestination:=strSlicerDestination)

Otros Métodos

Cut - Corta la segmentación de datos especificada y la copia en el Portapapeles.

Propiedades

ActiveItem Devuelve un objeto SlicerItem que representa el botón rebanador que está actualmente en el foco para la segmentación de la forma especificada. Solo lectura.

Dim slciteActiveItem As SlicerItem
Set slciteActiveItem = ActiveWorkbook.ActiveSlicer.ActiveItem

Caption Devuelve o establece el título de la segmentación de datos especificada. Lectura y escritura.

ActiveWorkbook.ActiveSlicer.Caption =

ColumnWidth Devuelve o establece el ancho, en puntos, de cada columna de la segmentación de la rebanada. Lectura y escritura.

ActiveWorkbook.ActiveSlicer.ColumnWidth =

DisableMoveResizeUI Devuelve o establece si la segmentación de datos especificada se puede mover o cambiar de tamaño mediante la interfaz de usuario. Lectura y escritura.

ActiveWorkbook.ActiveSlicer.DisableMoveResizeUI = True

DisplayHeader Devuelve o establece si el encabezado que muestra la propiedad Slicer Caption es visible. Lectura y escritura.

ActiveWorkbook.ActiveSlicer.DisplayHeader = True

Height Devuelve o establece el alto de la segmentación de los valores especificados, en puntos. Lectura y escritura.

ActiveWorkbook.ActiveSlicer.Height =

Left Devuelve o establece la posición horizontal del rebanador especificado, en puntos, en relación con la esquina superior izquierda de la celda a1 de la hoja de cálculo. Lectura y escritura.

ActiveWorkbook.ActiveSlicer.Left =

Locked Devuelve o establece si la segmentación de datos especificada puede modificarse cuando la hoja que la contiene está protegida. Lectura y escritura.

ActiveWorkbook.ActiveSlicer.Locked = True

Name Devuelve o establece el nombre de la segmentación de nombres especificada. Lectura y escritura.

ActiveWorkbook.ActiveSlicer.Name =

NumberOfColumns Devuelve o establece la cantidad de columnas que se incluyen en la segmentación de datos especificada. Lectura y escritura.

ActiveWorkbook.ActiveSlicer.NumberOfColumns =

Parent Devuelve el objeto Worksheet que representa la hoja que contiene la segmentación de la rebanada. Solo lectura.

Dim wsParent As Worksheet
Set wsParent = ActiveWorkbook.ActiveSlicer.Parent

RowHeight Devuelve o establece el alto, en puntos, de cada fila del segmento especificado. Lectura y escritura.

ActiveWorkbook.ActiveSlicer.RowHeight =

Shape Devuelve el objeto Shape asociado con la segmentación de la forma especificada. Solo lectura.

Dim shpShape As Shape
Set shpShape = ActiveWorkbook.ActiveSlicer.Shape

SlicerCache Devuelve el objeto SlicerCache asociado a la segmentación de la segmentación. Solo lectura.

Dim slcSlicerCache As SlicerCache
Set slcSlicerCache = ActiveWorkbook.ActiveSlicer.SlicerCache

SlicerCacheLevel Devuelve el objeto SlicerCacheLevel asociado a la segmentación de la segmentación. Solo lectura.

Dim slcclSlicerCacheLevel As SlicerCacheLevel
Set slcclSlicerCacheLevel = ActiveWorkbook.ActiveSlicer.SlicerCacheLevel

SlicerCacheType Devuelve el tipo de la caché de rebanador: Slicer (xlSlicer) o escala de tiempo (xlTimeline). XlSlicerCacheType de solo lectura.

Dim xscSlicerCacheType As XlSlicerCacheType
xscSlicerCacheType = ActiveWorkbook.ActiveSlicer.SlicerCacheType

Style Devuelve o establece el estilo aplicado actualmente a la segmentación de datos especificada. Lectura y escritura.

ActiveWorkbook.ActiveSlicer.Style =

TimelineViewState Estado específico de la escala de tiempo de la segmentación de información. TimelineViewState de solo lectura.

Dim tvsTimelineViewState As TimelineViewState
Set tvsTimelineViewState = ActiveWorkbook.ActiveSlicer.TimelineViewState

Top Devuelve o establece la posición vertical del rebanador especificado, en puntos, en relación con la esquina superior izquierda de la celda a1 de la hoja de cálculo. Lectura y escritura.

ActiveWorkbook.ActiveSlicer.Top =

Width Devuelve o establece el ancho de la segmentación de los valores especificados, en puntos. Lectura y escritura.

ActiveWorkbook.ActiveSlicer.Width =

Slicers.Count Devuelve el número de objetos de la colección.

Dim lngCount As Long
lngCount = ActiveCell.PivotTable.Slicers.Count

Slicers.Item Devuelve un objeto Slicer de la colección. Solo lectura.

Dim slcItem As Slicer
Set slcItem = ActiveCell.PivotTable.Slicers(Index:=1)

Slicers.Parent Devuelve el objeto SlicerCache primario de la colección de segmentaciones especificada. Solo lectura.

Dim objParent As Object
Set objParent = ActiveCell.PivotTable.Slicers.Parent