Compartilhar via


Excel.PivotFilters interface

Uma interface que representa todos os Filtros Dinâmicos atualmente aplicados a um determinado Campo Dinâmico.

Comentários

[ Conjunto de API: ExcelApi 1.12 ]

Propriedades

dateFilter

O filtro de data atualmente aplicado do Campo Dinâmico. Esta propriedade é null se não for aplicado nenhum filtro de valor.

labelFilter

O filtro de etiqueta atualmente aplicado do Campo Dinâmico. Esta propriedade é null se não for aplicado nenhum filtro de valor.

manualFilter

O filtro manual atualmente aplicado do Campo Dinâmico. Esta propriedade é null se não for aplicado nenhum filtro de valor.

valueFilter

O filtro de valor atualmente aplicado do Campo Dinâmico. Esta propriedade é null se não for aplicado nenhum filtro de valor.

Detalhes da propriedade

dateFilter

O filtro de data atualmente aplicado do Campo Dinâmico. Esta propriedade é null se não for aplicado nenhum filtro de valor.

dateFilter?: Excel.PivotDateFilter;

Valor da propriedade

Comentários

[ Conjunto de API: ExcelApi 1.12 ]

Exemplos

// Link to full sample: https://raw.githubusercontent.com/OfficeDev/office-js-snippets/prod/samples/excel/38-pivottable/pivottable-pivotfilters.yaml

await Excel.run(async (context) => {
  // Add a date-based PivotFilter.

  // Get the PivotTable.
  const pivotTable = context.workbook.worksheets.getActiveWorksheet().pivotTables.getItem("Farm Sales");

  // PivotFilters can only be applied to PivotHierarchies that are being used for pivoting.
  // If it's not already there, add "Date Updated" to the hierarchies.
  let dateHierarchy = pivotTable.rowHierarchies.getItemOrNullObject("Date Updated");
  await context.sync();
  if (dateHierarchy.isNullObject) {
    dateHierarchy = pivotTable.rowHierarchies.add(pivotTable.hierarchies.getItem("Date Updated"));
  }

  // Apply a date filter to filter out anything logged before August.
  const filterField = dateHierarchy.fields.getItem("Date Updated");
  const dateFilter = {
    condition: Excel.DateFilterCondition.afterOrEqualTo,
    comparator: {
      date: "2020-08-01",
      specificity: Excel.FilterDatetimeSpecificity.month
    }
  };
  filterField.applyFilter({ dateFilter: dateFilter });

  await context.sync();
});

labelFilter

O filtro de etiqueta atualmente aplicado do Campo Dinâmico. Esta propriedade é null se não for aplicado nenhum filtro de valor.

labelFilter?: Excel.PivotLabelFilter;

Valor da propriedade

Comentários

[ Conjunto de API: ExcelApi 1.12 ]

Exemplos

// Link to full sample: https://raw.githubusercontent.com/OfficeDev/office-js-snippets/prod/samples/excel/38-pivottable/pivottable-pivotfilters.yaml

await Excel.run(async (context) => {
  // Add a PivotFilter to filter based on the strings of item labels.

  // Get the PivotTable.
  const pivotTable = context.workbook.worksheets.getActiveWorksheet().pivotTables.getItem("Farm Sales");

  // Get the "Type" field.
  const field = pivotTable.hierarchies.getItem("Type").fields.getItem("Type");

  // Filter out any types that start with "L" ("Lemons" and "Limes" in this case).
  const filter: Excel.PivotLabelFilter = {
    condition: Excel.LabelFilterCondition.beginsWith,
    substring: "L",
    exclusive: true
  };

  // Apply the label filter to the field.
  field.applyFilter({ labelFilter: filter });

  await context.sync();
});

manualFilter

O filtro manual atualmente aplicado do Campo Dinâmico. Esta propriedade é null se não for aplicado nenhum filtro de valor.

manualFilter?: Excel.PivotManualFilter;

Valor da propriedade

Comentários

[ Conjunto de API: ExcelApi 1.12 ]

Exemplos

// Link to full sample: https://raw.githubusercontent.com/OfficeDev/office-js-snippets/prod/samples/excel/38-pivottable/pivottable-pivotfilters.yaml

await Excel.run(async (context) => {
  // Add a PivotFilter to filter on manually-selected items.

  // Get the PivotTable.
  const pivotTable = context.workbook.worksheets.getActiveWorksheet().pivotTables.getItem("Farm Sales");

  // PivotFilters can only be applied to PivotHierarchies that are being used for pivoting.
  // If it's not already there, add "Classification" to the hierarchies.
  let classHierarchy = pivotTable.filterHierarchies.getItemOrNullObject("Classification");
  await context.sync();
  if (classHierarchy.isNullObject) {
    classHierarchy = pivotTable.filterHierarchies.add(pivotTable.hierarchies.getItem("Classification"));
  }

  // Apply a manual filter to include only a specific PivotItem (the string "Organic").
  const filterField = classHierarchy.fields.getItem("Classification");
  const manualFilter = { selectedItems: ["Organic"]};
  filterField.applyFilter({ manualFilter: manualFilter });

  await context.sync();
});

valueFilter

O filtro de valor atualmente aplicado do Campo Dinâmico. Esta propriedade é null se não for aplicado nenhum filtro de valor.

valueFilter?: Excel.PivotValueFilter;

Valor da propriedade

Comentários

[ Conjunto de API: ExcelApi 1.12 ]

Exemplos

// Link to full sample: https://raw.githubusercontent.com/OfficeDev/office-js-snippets/prod/samples/excel/38-pivottable/pivottable-pivotfilters.yaml

await Excel.run(async (context) => {
  // Add a PivotFilter to filter on the values correlated with a row.

  // Get the PivotTable.
  const pivotTable = context.workbook.worksheets.getActiveWorksheet().pivotTables.getItem("Farm Sales");

  // Get the "Farm" field.
  const field = pivotTable.hierarchies.getItem("Farm").fields.getItem("Farm");

  // Filter to only include rows with more than 500 wholesale crates sold.
  const filter: Excel.PivotValueFilter = {
    condition: Excel.ValueFilterCondition.greaterThan,
    comparator: 500,
    value: "Sum of Crates Sold Wholesale"
  };

  // Apply the value filter to the field.
  field.applyFilter({ valueFilter: filter });

  await context.sync();
});