Compartir a través de


ExcelScript.Table interface

Representa una tabla de Excel.

Comentarios

Ejemplos

/**
 * This script creates a table from the current sheet's used range.
 * It then adds a total row to the table with the SUM of the last column.
 */
function main(workbook: ExcelScript.Workbook) {
    // Get the used range of the current worksheet.
    const sheet = workbook.getActiveWorksheet();
    const range = sheet.getUsedRange();

    // Create a table that has headers from that range.
    const table = sheet.addTable(range, true);

    // Have the table display the SUM for the last column.
    table.setShowTotals(true);
    const lastColumn = table.getColumn(table.getColumns().length);
    lastColumn.getTotalRowRange().setFormula(`=SUBTOTAL(109,[${lastColumn.getName()}])`);
}

Métodos

addColumn(index, values, name)

Agrega una nueva columna a la tabla.

addRow(index, values)

Agrega una fila a la tabla.

addRows(index, values)

Agrega una o más filas a la tabla.

clearFilters()

Borra todos los filtros aplicados actualmente en la tabla.

convertToRange()

Convierte la tabla en un rango de celdas normal. Se conservan todos los datos.

delete()

Elimina la tabla.

deleteRowsAt(index, count)

Elimine un número especificado de filas en un índice determinado.

getAutoFilter()

Representa el AutoFilter objeto de la tabla.

getColumn(key)

Obtiene un objeto de columna por nombre o identificador. Si la columna no existe, este método devuelve undefined.

getColumnById(key)

Obtiene un objeto de columna por identificador. Si la columna no existe, devolverá undefined.

getColumnByName(key)

Obtiene un objeto de columna por Name. Si la columna no existe, devolverá undefined.

getColumns()

Representa una colección de todas las columnas de la tabla.

getHeaderRowRange()

Obtiene el objeto de intervalo asociado a la fila de encabezado de la tabla.

getHighlightFirstColumn()

Especifica si la primera columna contiene formato especial.

getHighlightLastColumn()

Especifica si la última columna contiene formato especial.

getId()

Devuelve un valor que identifica de forma única la tabla de un libro determinado. El valor del identificador permanece igual, incluso cuando se cambia el nombre de la tabla.

getLegacyId()

Devuelve un identificador numérico.

getName()

Nombre de la tabla.

getPredefinedTableStyle()

Valor constante que representa el estilo de tabla. Los valores posibles son: "TableStyleLight1" a "TableStyleLight21", "TableStyleMedium1" a "TableStyleMedium28", "TableStyleDark1" a "TableStyleDark11". También puede especificarse un estilo personalizado definido por el usuario presente en el libro.

getRange()

Obtiene el objeto de rango asociado a toda la tabla.

getRangeBetweenHeaderAndTotal()

Obtiene el objeto de rango asociado al cuerpo de datos de la tabla.

getRowCount()

Obtiene el número de filas de la tabla.

getShowBandedColumns()

Especifica si las columnas muestran formatos en bandas en los que las columnas impares se resaltan de forma diferente a las pares, para facilitar la lectura de la tabla.

getShowBandedRows()

Especifica si las filas muestran formatos en banda en los que las filas impares se resaltan de forma diferente a las pares, para facilitar la lectura de la tabla.

getShowFilterButton()

Especifica si los botones de filtro están visibles en la parte superior de cada encabezado de columna. Esta configuración solo se permite si la tabla contiene una fila de encabezado.

getShowHeaders()

Especifica si la fila de encabezado está visible. Este valor puede establecerse para que muestre o quite la fila de encabezado.

getShowTotals()

Especifica si la fila total está visible. Este valor puede establecerse para que muestre o quite la fila de totales.

getSort()

Representa la ordenación de la tabla.

getTotalRowRange()

Obtiene el objeto de intervalo asociado a la fila de totales de la tabla.

getWorksheet()

Hoja de cálculo que contiene la tabla actual.

reapplyFilters()

Vuelve a aplicar todos los filtros aplicados actualmente en la tabla.

resize(newRange)

Cambie el tamaño de la tabla al nuevo intervalo. El nuevo intervalo debe superponerse con el intervalo de tabla original y los encabezados (o la parte superior de la tabla) deben estar en la misma fila.

setHighlightFirstColumn(highlightFirstColumn)

Especifica si la primera columna contiene formato especial.

setHighlightLastColumn(highlightLastColumn)

Especifica si la última columna contiene formato especial.

setName(name)

Nombre de la tabla.

setPredefinedTableStyle(predefinedTableStyle)

Valor constante que representa el estilo de tabla. Los valores posibles son: "TableStyleLight1" a "TableStyleLight21", "TableStyleMedium1" a "TableStyleMedium28", "TableStyleDark1" a "TableStyleDark11". También puede especificarse un estilo personalizado definido por el usuario presente en el libro.

setShowBandedColumns(showBandedColumns)

Especifica si las columnas muestran formatos en bandas en los que las columnas impares se resaltan de forma diferente a las pares, para facilitar la lectura de la tabla.

setShowBandedRows(showBandedRows)

Especifica si las filas muestran formatos en banda en los que las filas impares se resaltan de forma diferente a las pares, para facilitar la lectura de la tabla.

setShowFilterButton(showFilterButton)

Especifica si los botones de filtro están visibles en la parte superior de cada encabezado de columna. Esta configuración solo se permite si la tabla contiene una fila de encabezado.

setShowHeaders(showHeaders)

Especifica si la fila de encabezado está visible. Este valor puede establecerse para que muestre o quite la fila de encabezado.

setShowTotals(showTotals)

Especifica si la fila total está visible. Este valor puede establecerse para que muestre o quite la fila de totales.

Detalles del método

addColumn(index, values, name)

Agrega una nueva columna a la tabla.

addColumn(
            index?: number,
            values?: (boolean | string | number)[],
            name?: string
        ): TableColumn;

Parámetros

index

number

Opcional. Especifica la posición relativa de la nueva columna. Si es NULL o -1, se produce la adición al final. Las columnas con un índice más alto se desplazarán a un lado. Indizado con cero.

values

(boolean | string | number)[]

Opcional. Matriz unidimensional de valores sin formato de la columna de tabla.

name

string

Opcional. Especifica el nombre de la nueva columna. Si es NULL, se utilizará el nombre predeterminado.

Devoluciones

Ejemplos

/**
 * This script adds a new column to a table.
 */
function main(workbook: ExcelScript.Workbook) {
  // Get the first table in the workbook.
  const table = workbook.getTables()[0];

  // Append an empty column to the table with the header "Total". 
  table.addColumn(-1, null, "Total");
}

addRow(index, values)

Agrega una fila a la tabla.

addRow(index?: number, values?: (boolean | string | number)[]): void;

Parámetros

index

number

Opcional. Especifica la posición relativa de la nueva fila. Si es NULL o -1, se produce la adición al final. Las filas situadas debajo de la fila insertada se desplazan hacia abajo. Indizado con cero.

values

(boolean | string | number)[]

Opcional. Matriz unidimensional de valores sin formato de la fila de tabla.

Devoluciones

void

Ejemplos

/**
 * This script adds a row to an existing table.
 */
function main(workbook: ExcelScript.Workbook) {
    // Get the first table in the current worksheet.
    const selectedSheet = workbook.getActiveWorksheet();
    const table = selectedSheet.getTables()[0];

    // Initialize the data to be added as a table row.
    // Note that length of the array must match the number of columns in the table.
    let rowData = ["Carrots", "Vegetable", 750];

    // Add a row to the end of the table.
    table.addRow(-1, rowData);
}

addRows(index, values)

Agrega una o más filas a la tabla.

addRows(index?: number, values?: (boolean | string | number)[][]): void;

Parámetros

index

number

Opcional. Especifica la posición relativa de la nueva fila. Si es NULL o -1, se produce la adición al final. Las filas situadas debajo de la fila insertada se desplazan hacia abajo. Indizado con cero.

values

(boolean | string | number)[][]

Opcional. Matriz bidimensional de valores sin formato de la fila de la tabla.

Devoluciones

void

Ejemplos

/**
 * This script adds multiple rows to an existing table.
 */
function main(workbook: ExcelScript.Workbook) {
    // Get the first table in the current worksheet.
    const selectedSheet = workbook.getActiveWorksheet();
    const table = selectedSheet.getTables()[0];

    // Initialize the data to be added as table rows.
    // Note that length of the array must match the number of columns in the table.
    let rowData = [["Apples", "Fruit", 5000],
                  ["Celery", "Vegetable", 600],
                  ["Onions", "Vegetable", 1500]];

    // Add the rows to the end of the table.
    table.addRows(-1, rowData);
}

clearFilters()

Borra todos los filtros aplicados actualmente en la tabla.

clearFilters(): void;

Devoluciones

void

Ejemplos

/**
 * This script clears the filters from all tables in the workbook.
 */
function main(workbook: ExcelScript.Workbook) {
    // Get all the tables in the workbook.
    const tables = workbook.getTables();

    // Remove any active filters from each table.
    tables.forEach((table) => {
      table.clearFilters();
    });
}

convertToRange()

Convierte la tabla en un rango de celdas normal. Se conservan todos los datos.

convertToRange(): Range;

Devoluciones

Ejemplos

/**
 * This script converts a table to a range and removes the formatting.
 */
function main(workbook: ExcelScript.Workbook) {
    // Get the first table in the current worksheet.
    const selectedSheet = workbook.getActiveWorksheet();
    const table = selectedSheet.getTables()[0];

    // Convert the table to a range.
    const formerTable = table.convertToRange();

    // Remove the formatting from the table
    formerTable.clear(ExcelScript.ClearApplyTo.formats);
}

delete()

Elimina la tabla.

delete(): void;

Devoluciones

void

Ejemplos

/**
 * This script deletes a table. 
 * This removes all associated data and formatting.
 */
function main(workbook: ExcelScript.Workbook) {
    // Get the table named "Inventory".
    const table = workbook.getTable("Inventory");

    // Delete the table.
    table.delete();
}

deleteRowsAt(index, count)

Elimine un número especificado de filas en un índice determinado.

deleteRowsAt(index: number, count?: number): void;

Parámetros

index

number

Valor de índice de la fila que se va a eliminar. Precaución: es posible que el índice de la fila se haya movido desde el momento en que determinó que el valor se usaría para la eliminación.

count

number

Número de filas que se van a eliminar. De forma predeterminada, se eliminará una sola fila. Nota: La eliminación de más de 1000 filas al mismo tiempo podría dar lugar a un tiempo de espera de Power Automate.

Devoluciones

void

getAutoFilter()

Representa el AutoFilter objeto de la tabla.

getAutoFilter(): AutoFilter;

Devoluciones

getColumn(key)

Obtiene un objeto de columna por nombre o identificador. Si la columna no existe, este método devuelve undefined.

getColumn(key: number | string): TableColumn | undefined;

Parámetros

key

number | string

Nombre o identificador de columna.

Devoluciones

Ejemplos

/**
 * This script adjusts the indentation of a specific table column.
 */
function main(workbook: ExcelScript.Workbook) {
  // Get the first table in the current worksheet.
  const selectedSheet = workbook.getActiveWorksheet();
  const table = selectedSheet.getTables()[0];

  // Get the data range of the second column.
  const secondColumn = table.getColumn(2);
  const data = secondColumn.getRangeBetweenHeaderAndTotal();

  // Add an indentation of 1 character space to the data range.
  data.getFormat().adjustIndent(1);
}

getColumnById(key)

Obtiene un objeto de columna por identificador. Si la columna no existe, devolverá undefined.

getColumnById(key: number): TableColumn | undefined;

Parámetros

key

number

Id. de columna.

Devoluciones

getColumnByName(key)

Obtiene un objeto de columna por Name. Si la columna no existe, devolverá undefined.

getColumnByName(key: string): TableColumn | undefined;

Parámetros

key

string

Nombre de columna.

Devoluciones

Ejemplos

/**
 * This script removes a specific column from a table.
 */
function main(workbook: ExcelScript.Workbook) {
    // Get the table named "Inventory".
    const table = workbook.getTable("Inventory");

    // If it exists, remove the column named "Category".
    let categoryColumn = table.getColumnByName("Category");
    if (categoryColumn) {
        categoryColumn.delete();
    }
}

getColumns()

Representa una colección de todas las columnas de la tabla.

getColumns(): TableColumn[];

Devoluciones

Ejemplos

/**
 * This script adds a new column to a table.
 * It then sets the formulas in the new column to be the product
 * of the values in the two preceding columns.
 */
function main(workbook: ExcelScript.Workbook) {
  // Get the first table in the workbook.
  const table = workbook.getTables()[0];

  // Append an empty column to the table with the header "Total". 
  const totalColumn = table.addColumn(-1, null, "Total");

  // Get the names of the two preceding columns.
  const productColumnName1 = table.getColumns()[totalColumn.getIndex() - 1].getName();
  const productColumnName2 = table.getColumns()[totalColumn.getIndex() - 2].getName();
  
  // Set the formulas in the "Total" column to be the product of the two preceding columns.
  totalColumn.getRangeBetweenHeaderAndTotal().setFormula(
    `=[@[${productColumnName1}]]*[@[${productColumnName2}]]`
  );
}

getHeaderRowRange()

Obtiene el objeto de intervalo asociado a la fila de encabezado de la tabla.

getHeaderRowRange(): Range;

Devoluciones

Ejemplos

/**
 * This script centers the text in a table's header row cells.
 */
function main(workbook: ExcelScript.Workbook) {
  // Get the first table on the current worksheet.
  const currentSheet = workbook.getActiveWorksheet();
  const table = currentSheet.getTables()[0];

  // Get the header range.
  const headerRange = table.getHeaderRowRange();

  // Set the horizontal text alignment to `center`.
  headerRange.getFormat().setHorizontalAlignment(ExcelScript.HorizontalAlignment.center);
}

getHighlightFirstColumn()

Especifica si la primera columna contiene formato especial.

getHighlightFirstColumn(): boolean;

Devoluciones

boolean

getHighlightLastColumn()

Especifica si la última columna contiene formato especial.

getHighlightLastColumn(): boolean;

Devoluciones

boolean

getId()

Devuelve un valor que identifica de forma única la tabla de un libro determinado. El valor del identificador permanece igual, incluso cuando se cambia el nombre de la tabla.

getId(): string;

Devoluciones

string

getLegacyId()

Devuelve un identificador numérico.

getLegacyId(): string;

Devoluciones

string

getName()

Nombre de la tabla.

getName(): string;

Devoluciones

string

getPredefinedTableStyle()

Valor constante que representa el estilo de tabla. Los valores posibles son: "TableStyleLight1" a "TableStyleLight21", "TableStyleMedium1" a "TableStyleMedium28", "TableStyleDark1" a "TableStyleDark11". También puede especificarse un estilo personalizado definido por el usuario presente en el libro.

getPredefinedTableStyle(): string;

Devoluciones

string

getRange()

Obtiene el objeto de rango asociado a toda la tabla.

getRange(): Range;

Devoluciones

Ejemplos

/**
 * This script removes any extra formatting that's been applied to a table. 
 * This leaves only the base table style effects.
 * Any formatting outside of the table will be left as is.
 */
function main(workbook: ExcelScript.Workbook) {
  // Get the first table on the current worksheet.
  let worksheet = workbook.getActiveWorksheet();
  let table = worksheet.getTables()[0];

  // Get the range used by the table.
  let range = table.getRange();

  // Clear all the formatting that is not applied by the table and the table style.
  range.clear(ExcelScript.ClearApplyTo.formats);
}

getRangeBetweenHeaderAndTotal()

Obtiene el objeto de rango asociado al cuerpo de datos de la tabla.

getRangeBetweenHeaderAndTotal(): Range;

Devoluciones

getRowCount()

Obtiene el número de filas de la tabla.

getRowCount(): number;

Devoluciones

number

getShowBandedColumns()

Especifica si las columnas muestran formatos en bandas en los que las columnas impares se resaltan de forma diferente a las pares, para facilitar la lectura de la tabla.

getShowBandedColumns(): boolean;

Devoluciones

boolean

getShowBandedRows()

Especifica si las filas muestran formatos en banda en los que las filas impares se resaltan de forma diferente a las pares, para facilitar la lectura de la tabla.

getShowBandedRows(): boolean;

Devoluciones

boolean

getShowFilterButton()

Especifica si los botones de filtro están visibles en la parte superior de cada encabezado de columna. Esta configuración solo se permite si la tabla contiene una fila de encabezado.

getShowFilterButton(): boolean;

Devoluciones

boolean

getShowHeaders()

Especifica si la fila de encabezado está visible. Este valor puede establecerse para que muestre o quite la fila de encabezado.

getShowHeaders(): boolean;

Devoluciones

boolean

getShowTotals()

Especifica si la fila total está visible. Este valor puede establecerse para que muestre o quite la fila de totales.

getShowTotals(): boolean;

Devoluciones

boolean

getSort()

Representa la ordenación de la tabla.

getSort(): TableSort;

Devoluciones

getTotalRowRange()

Obtiene el objeto de intervalo asociado a la fila de totales de la tabla.

getTotalRowRange(): Range;

Devoluciones

getWorksheet()

Hoja de cálculo que contiene la tabla actual.

getWorksheet(): Worksheet;

Devoluciones

reapplyFilters()

Vuelve a aplicar todos los filtros aplicados actualmente en la tabla.

reapplyFilters(): void;

Devoluciones

void

Ejemplos

/**
 * This script reapplies the filters on every table in the workbook.
 */
function main(workbook: ExcelScript.Workbook) {
  // Get all the tables.
  const tables = workbook.getTables();

  // Iterate over every table.
  tables.forEach((table) => {
    // Reapply the filters to account for new table entries.
    table.reapplyFilters();
  });
}

resize(newRange)

Cambie el tamaño de la tabla al nuevo intervalo. El nuevo intervalo debe superponerse con el intervalo de tabla original y los encabezados (o la parte superior de la tabla) deben estar en la misma fila.

resize(newRange: Range | string): void;

Parámetros

newRange

ExcelScript.Range | string

Objeto de rango o dirección de intervalo que se usará para determinar el nuevo tamaño de la tabla.

Devoluciones

void

setHighlightFirstColumn(highlightFirstColumn)

Especifica si la primera columna contiene formato especial.

setHighlightFirstColumn(highlightFirstColumn: boolean): void;

Parámetros

highlightFirstColumn

boolean

Devoluciones

void

setHighlightLastColumn(highlightLastColumn)

Especifica si la última columna contiene formato especial.

setHighlightLastColumn(highlightLastColumn: boolean): void;

Parámetros

highlightLastColumn

boolean

Devoluciones

void

setName(name)

Nombre de la tabla.

setName(name: string): void;

Parámetros

name

string

Devoluciones

void

setPredefinedTableStyle(predefinedTableStyle)

Valor constante que representa el estilo de tabla. Los valores posibles son: "TableStyleLight1" a "TableStyleLight21", "TableStyleMedium1" a "TableStyleMedium28", "TableStyleDark1" a "TableStyleDark11". También puede especificarse un estilo personalizado definido por el usuario presente en el libro.

setPredefinedTableStyle(predefinedTableStyle: string): void;

Parámetros

predefinedTableStyle

string

Devoluciones

void

setShowBandedColumns(showBandedColumns)

Especifica si las columnas muestran formatos en bandas en los que las columnas impares se resaltan de forma diferente a las pares, para facilitar la lectura de la tabla.

setShowBandedColumns(showBandedColumns: boolean): void;

Parámetros

showBandedColumns

boolean

Devoluciones

void

setShowBandedRows(showBandedRows)

Especifica si las filas muestran formatos en banda en los que las filas impares se resaltan de forma diferente a las pares, para facilitar la lectura de la tabla.

setShowBandedRows(showBandedRows: boolean): void;

Parámetros

showBandedRows

boolean

Devoluciones

void

Ejemplos

/**
 * This script sets all the tables in the workbook to have banded rows. 
 */
function main(workbook: ExcelScript.Workbook) {
  // Get all the tables.
  const tables = workbook.getTables();

  // For each table, set the banded row formatting to true.
  tables.forEach((table) => {
    table.setShowBandedRows(true);
  });
}

setShowFilterButton(showFilterButton)

Especifica si los botones de filtro están visibles en la parte superior de cada encabezado de columna. Esta configuración solo se permite si la tabla contiene una fila de encabezado.

setShowFilterButton(showFilterButton: boolean): void;

Parámetros

showFilterButton

boolean

Devoluciones

void

setShowHeaders(showHeaders)

Especifica si la fila de encabezado está visible. Este valor puede establecerse para que muestre o quite la fila de encabezado.

setShowHeaders(showHeaders: boolean): void;

Parámetros

showHeaders

boolean

Devoluciones

void

Ejemplos

/**
 * This script makes a table's headers not visible in the grid.
 */
function main(workbook: ExcelScript.Workbook) {
    // Get the table named "CoverageTable".
    const coverageTable = workbook.getTable("CoverageTable");

    // Make the header row not visible.
    coverageTable.setShowHeaders(false);
}

setShowTotals(showTotals)

Especifica si la fila total está visible. Este valor puede establecerse para que muestre o quite la fila de totales.

setShowTotals(showTotals: boolean): void;

Parámetros

showTotals

boolean

Devoluciones

void

Ejemplos

/**
 * This script adds the Total Row to an existing table.
 */
function main(workbook: ExcelScript.Workbook) {
    // Get the first table in the current worksheet.
    const selectedSheet = workbook.getActiveWorksheet();
    const table = selectedSheet.getTables()[0];

    // Set the Total Row to show.
    table.setShowTotals(true);
}