Slicer

Slicer class

切片器视图的摘要描述

public class Slicer

特性

姓名 描述
AlternativeText { get; set; } 返回或设置切片器对象的描述性(替代)文本字符串。
Caption { get; set; } 返回或设置指定切片器的标题。
CaptionVisible { get; set; } 返回或设置显示切片器Caption的表头是否可见 默认值为true
ColumnWidth { get; set; } 返回或设置切片器中每列的宽度(以磅为单位)。
ColumnWidthPixel { get; set; } 获取或设置切片器每列的宽度(以像素为单位)。
Height { get; set; } 返回或设置指定切片器的高度,以磅为单位。
HeightPixel { get; set; } 返回或设置指定切片器的高度,以像素为单位。
IsLocked { get; set; } 表示切片器形状是否被锁定。
IsPrintable { get; set; } 表示切片器对象是否可打印。
LeftPixel { get; set; } 返回或设置切片器形状与其左列的水平偏移量,以像素为单位。
LockedAspectRatio { get; set; } 表示是否锁定纵横比。
LockedPosition { get; set; } 指示是否可以使用用户界面移动或调整指定切片器的大小。
Name { get; set; } 返回或设置指定切片器的名称
NumberOfColumns { get; set; } 返回或设置指定切片器中的列数。
Parent { get; } 返回表示包含切片器的工作表的 Worksheet 对象。只读。
Placement { get; set; } 表示绘图对象附加到其下方单元格的方式。 该属性控制对象在工作表上的放置。
RowHeight { get; set; } 返回或设置指定切片器中每一行的高度(以磅为单位)。
RowHeightPixel { get; set; } 返回或设置指定切片器中每一行的高度(以像素为单位)。
SlicerCache { get; } 返回与切片器关联的 SlicerCache 对象。只读。
StyleType { get; set; } 指定内置切片器样式的类型 默认类型为SlicerStyleLight1
Title { get; set; } 指定当前切片器对象的标题。
TopPixel { get; set; } 返回或设置切片器形状与其顶行的垂直偏移量,以像素为单位。
Width { get; set; } 返回或设置指定切片器的宽度,以磅为单位。
WidthPixel { get; set; } 返回或设置指定切片器的宽度,以像素为单位。

方法

姓名 描述
AddPivotConnection(PivotTable) 添加数据透视表连接。
Refresh() 刷新切片器。同时,刷新和计算相对数据透视表。
RemovePivotConnection(PivotTable) 删除数据透视表连接。

例子


[C#]

Workbook book = new Workbook();
Worksheet sheet = book.Worksheets[0];
Cells cells = sheet.Cells;
cells[0, 0].Value = "fruit";
cells[1, 0].Value = "grape";
cells[2, 0].Value = "blueberry";
cells[3, 0].Value = "kiwi";
cells[4, 0].Value = "cherry";
cells[5, 0].Value = "grape";
cells[6, 0].Value = "blueberry";
cells[7, 0].Value = "kiwi";
cells[8, 0].Value = "cherry";

cells[0, 1].Value = "year";
cells[1, 1].Value = 2020;
cells[2, 1].Value = 2020;
cells[3, 1].Value = 2020;
cells[4, 1].Value = 2020;
cells[5, 1].Value = 2021;
cells[6, 1].Value = 2021;
cells[7, 1].Value = 2021;
cells[8, 1].Value = 2021;

cells[0, 2].Value = "amount";
cells[1, 2].Value = 50;
cells[2, 2].Value = 60;
cells[3, 2].Value = 70;
cells[4, 2].Value = 80;
cells[5, 2].Value = 90;
cells[6, 2].Value = 100;
cells[7, 2].Value = 110;
cells[8, 2].Value = 120;

PivotTableCollection pivots = sheet.PivotTables;

int pivotIndex = pivots.Add("=Sheet1!A1:C9", "A12", "TestPivotTable");
PivotTable pivot = pivots[pivotIndex];
pivot.AddFieldToArea(PivotFieldType.Row, "fruit");
pivot.AddFieldToArea(PivotFieldType.Column, "year");
pivot.AddFieldToArea(PivotFieldType.Data, "amount");

pivot.PivotTableStyleType = PivotTableStyleType.PivotTableStyleMedium10;
pivot.RefreshData();
pivot.CalculateData();

SlicerCollection slicers = sheet.Slicers;
int slicerIndex = slicers.Add(pivot, "E12", "fruit");
Slicer slicer = slicers[slicerIndex];
slicer.StyleType = SlicerStyleType.SlicerStyleLight2;

SlicerCacheItemCollection items = slicer.SlicerCache.SlicerCacheItems;
SlicerCacheItem item = items[0];
item.Selected = false;
//做你的事
book.Save("out.xlsx");

[Visual Basic]

Dim book As Workbook = New Workbook()
Dim sheet As Worksheet = book.Worksheets(0)
Dim cells As Cells = sheet.Cells

cells(0, 0).Value = "fruit"
cells(1, 0).Value = "grape"
cells(2, 0).Value = "blueberry"
cells(3, 0).Value = "kiwi"
cells(4, 0).Value = "cherry"
cells(5, 0).Value = "grape"
cells(6, 0).Value = "blueberry"
cells(7, 0).Value = "kiwi"
cells(8, 0).Value = "cherry"

cells(0, 1).Value = "year"
cells(1, 1).Value = 2020
cells(2, 1).Value = 2020
cells(3, 1).Value = 2020
cells(4, 1).Value = 2020
cells(5, 1).Value = 2021
cells(6, 1).Value = 2021
cells(7, 1).Value = 2021
cells(8, 1).Value = 2021

cells(0, 2).Value = "amount"
cells(1, 2).Value = 50
cells(2, 2).Value = 60
cells(3, 2).Value = 70
cells(4, 2).Value = 80
cells(5, 2).Value = 90
cells(6, 2).Value = 100
cells(7, 2).Value = 110
cells(8, 2).Value = 120

Dim pivots As PivotTableCollection = sheet.PivotTables
Dim pivotIndex As Int32 = pivots.Add("=Sheet1!A1:C9", "A12", "TestPivotTable")
Dim pivot As PivotTable = pivots(pivotIndex)
pivot.AddFieldToArea(PivotFieldType.Row, "fruit")
Pivot.AddFieldToArea(PivotFieldType.Column, "year")
Pivot.AddFieldToArea(PivotFieldType.Data, "amount")

pivot.PivotTableStyleType = PivotTableStyleType.PivotTableStyleMedium10
pivot.RefreshData()
pivot.CalculateData()

Dim slicers As SlicerCollection = sheet.Slicers
Dim slicerIndex As Int32 = slicers.Add(pivot, "E12", "fruit")
Dim slicer As Slicer = slicers(slicerIndex)
slicer.StyleType = SlicerStyleType.SlicerStyleLight2

Dim items As SlicerCacheItemCollection = slicer.SlicerCache.SlicerCacheItems
Dim item As SlicerCacheItem = items(0)
item.Selected = False

book.Save("out_vb.xlsx")

也可以看看