Excel.Workbook class

Libro es el objeto de nivel superior que contiene objetos de libro relacionados, como hojas de cálculo, tablas y rangos. Para obtener más información sobre el modelo de objetos de libro, lea Trabajar con libros mediante la API de JavaScript de Excel.

Extends

Comentarios

Conjunto de API: ExcelApi 1.1

Usada por

Ejemplos

// Link to full sample: https://raw.githubusercontent.com/OfficeDev/office-js-snippets/prod/samples/excel/50-workbook/workbook-get-active-cell.yaml

await Excel.run(async (context) => {

    let myWorkbook = context.workbook;
    let activeCell = myWorkbook.getActiveCell();
    activeCell.load("address");

    await context.sync();
    
    console.log("The active cell is " + activeCell.address);
});

Propiedades

application

Representa la instancia de la aplicación de Excel que contiene este libro.

bindings

Representa una colección de enlaces que forman parte del libro.

context

El contexto de solicitud asociado al objeto. De esta forma, se conecta el proceso del complemento con el proceso de la aplicación host de Office.

customXmlParts

Representa la colección de elementos XML personalizados que contiene este libro.

dataConnections

Representa todas las conexiones de datos del libro.

functions

Representa una colección de funciones de hoja de cálculo que pueden usarse para el cálculo.

name

Obtiene el nombre del libro.

names

Representa una colección de elementos con nombre (rangos con nombre y constantes) en el ámbito de un libro.

pivotTables

Representa una colección de tablas dinámicas asociadas con el libro.

properties

Obtiene las propiedades del libro.

protection

Devuelve el objeto de protección de un libro.

readOnly

Devuelve true si el libro está abierto en modo de solo lectura.

settings

Representa un conjunto de opciones de configuración asociadas al libro.

styles

Representa una colección de estilos asociada con el libro.

tables

Representa una colección de tablas asociadas con el libro.

worksheets

Representa una colección de hojas de cálculo asociadas con el libro.

Métodos

getActiveCell()

Obtiene la celda activa del libro.

getSelectedRange()

Obtiene del libro el rango único seleccionado actualmente. Si hay varios rangos seleccionados, este método producirá un error.

load(options)

Pone en cola un comando para cargar las propiedades especificadas del objeto. Debe llamar a context.sync() antes de leer las propiedades.

load(propertyNames)

Pone en cola un comando para cargar las propiedades especificadas del objeto. Debe llamar a context.sync() antes de leer las propiedades.

load(propertyNamesAndPaths)

Pone en cola un comando para cargar las propiedades especificadas del objeto. Debe llamar a context.sync() antes de leer las propiedades.

set(properties, options)

Establece varias propiedades de un objeto al mismo tiempo. Puede pasar un objeto sin formato con las propiedades adecuadas u otro objeto API del mismo tipo.

set(properties)

Establece varias propiedades en el objeto al mismo tiempo, basadas en un objeto cargado existente.

toJSON()

Reemplaza el método JavaScript toJSON() para proporcionar una salida más útil cuando se pasa un objeto API a JSON.stringify(). (JSON.stringify, a su vez, llama al toJSON método del objeto que se le pasa). Mientras que el objeto original Excel.Workbook es un objeto API, el toJSON método devuelve un objeto JavaScript simple (escrito como Excel.Interfaces.WorkbookData) que contiene copias superficiales de cualquier propiedad secundaria cargada del objeto original.

Eventos

onSelectionChanged

Se genera al cambiar la selección en el documento.

Detalles de las propiedades

application

Representa la instancia de la aplicación de Excel que contiene este libro.

readonly application: Excel.Application;

Valor de propiedad

Comentarios

Conjunto de API: ExcelApi 1.1

bindings

Representa una colección de enlaces que forman parte del libro.

readonly bindings: Excel.BindingCollection;

Valor de propiedad

Comentarios

Conjunto de API: ExcelApi 1.1

context

El contexto de solicitud asociado al objeto. De esta forma, se conecta el proceso del complemento con el proceso de la aplicación host de Office.

context: RequestContext;

Valor de propiedad

customXmlParts

Representa la colección de elementos XML personalizados que contiene este libro.

readonly customXmlParts: Excel.CustomXmlPartCollection;

Valor de propiedad

Comentarios

Conjunto de API: ExcelApi 1.5

Ejemplos

// Link to full sample: https://raw.githubusercontent.com/OfficeDev/office-js-snippets/prod/samples/excel/18-custom-xml-parts/test-xml-for-unique-namespace.yaml

await Excel.run(async (context) => {
    document.getElementById("display-xml").textContent = "";
    const customXmlParts = context.workbook.customXmlParts;
    customXmlParts.load("items");

    await context.sync();

    for (let i = 0; i < customXmlParts.items.length; i++) {
        customXmlParts.items[i].delete();
    }

    await context.sync();
});

dataConnections

Representa todas las conexiones de datos del libro.

readonly dataConnections: Excel.DataConnectionCollection;

Valor de propiedad

Comentarios

Conjunto de API: ExcelApi 1.7

functions

Representa una colección de funciones de hoja de cálculo que pueden usarse para el cálculo.

readonly functions: Excel.Functions;

Valor de propiedad

Comentarios

Conjunto de API: ExcelApi 1.2

Ejemplos

// Link to full sample: https://raw.githubusercontent.com/OfficeDev/office-js-snippets/prod/samples/excel/50-workbook/workbook-built-in-functions.yaml

await Excel.run(async (context) => {
  // This function uses VLOOKUP to find data in the "Wrench" row
  // on the worksheet, and then it uses SUM to combine the values.
  let range = context.workbook.worksheets.getItem("Sample").getRange("A1:D4");

  // Get the values in the second, third, and fourth columns in the "Wrench" row,
  // and combine those values with SUM.
  let sumOfTwoLookups = context.workbook.functions.sum(
    context.workbook.functions.vlookup("Wrench", range, 2, false),
    context.workbook.functions.vlookup("Wrench", range, 3, false),
    context.workbook.functions.vlookup("Wrench", range, 4, false)
  );
  sumOfTwoLookups.load("value");

  await context.sync();
  console.log(" Number of wrenches sold in November, December, and January = " + sumOfTwoLookups.value);
});

name

Obtiene el nombre del libro.

readonly name: string;

Valor de propiedad

string

Comentarios

Conjunto de API: ExcelApi 1.7

names

Representa una colección de elementos con nombre (rangos con nombre y constantes) en el ámbito de un libro.

readonly names: Excel.NamedItemCollection;

Valor de propiedad

Comentarios

Conjunto de API: ExcelApi 1.1

pivotTables

Representa una colección de tablas dinámicas asociadas con el libro.

readonly pivotTables: Excel.PivotTableCollection;

Valor de propiedad

Comentarios

Conjunto de API: ExcelApi 1.3

Ejemplos

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

await Excel.run(async (context) => {
  // Get the names of all the PivotTables in the workbook.
  const pivotTables = context.workbook.pivotTables;
  pivotTables.load("name");
  await context.sync();

  // Display the names in the console.
  console.log("PivotTables in the workbook:")
  pivotTables.items.forEach((pivotTable) => {
    console.log(`\t${pivotTable.name}`);
  });
});

properties

Obtiene las propiedades del libro.

readonly properties: Excel.DocumentProperties;

Valor de propiedad

Comentarios

Conjunto de API: ExcelApi 1.7

Ejemplos

// Link to full sample: https://raw.githubusercontent.com/OfficeDev/office-js-snippets/prod/samples/excel/26-document/properties.yaml

await Excel.run(async (context) => {
    let titleValue = "Excel document properties API";
    let subjectValue = "Set and get document properties";
    let keywordsValue = "Set and get operations";
    let commentsValue = "This is an Excel document properties API code sample";
    let categoryValue = "Office Add-ins";
    let managerValue = "John";
    let companyValue = "Microsoft";

    let docProperties = context.workbook.properties;

    // Set the writeable document properties.
    docProperties.title = titleValue;
    docProperties.subject = subjectValue;
    docProperties.keywords = keywordsValue;
    docProperties.comments = commentsValue;
    docProperties.category = categoryValue;
    docProperties.manager = managerValue;
    docProperties.company = companyValue;

    await context.sync();

    console.log("Set the following document properties: title, subject, keywords, comments, category, manager, company.");
});

protection

Devuelve el objeto de protección de un libro.

readonly protection: Excel.WorkbookProtection;

Valor de propiedad

Comentarios

Conjunto de API: ExcelApi 1.7

Ejemplos

// Link to full sample: https://raw.githubusercontent.com/OfficeDev/office-js-snippets/prod/samples/excel/50-workbook/data-protection.yaml

await Excel.run(async (context) => {
    const workbook: Excel.Workbook = context.workbook;
    workbook.protection.unprotect();
});

readOnly

Devuelve true si el libro está abierto en modo de solo lectura.

readonly readOnly: boolean;

Valor de propiedad

boolean

Comentarios

Conjunto de API: ExcelApi 1.8

settings

Representa un conjunto de opciones de configuración asociadas al libro.

readonly settings: Excel.SettingCollection;

Valor de propiedad

Comentarios

Conjunto de API: ExcelApi 1.4

Ejemplos

// Link to full sample: https://raw.githubusercontent.com/OfficeDev/office-js-snippets/prod/samples/excel/30-events/events-workbook-and-worksheet-collection.yaml

await Excel.run(async (context) => {
    const settings: Excel.SettingCollection = context.workbook.settings;
    settings.onSettingsChanged.add(onChangedSetting);

    await context.sync();
    console.log("Settings changed handler registered.");
});

styles

Representa una colección de estilos asociada con el libro.

readonly styles: Excel.StyleCollection;

Valor de propiedad

Comentarios

Conjunto de API: ExcelApi 1.7

Ejemplos

// Link to full sample: https://raw.githubusercontent.com/OfficeDev/office-js-snippets/prod/samples/excel/42-range/style.yaml

await Excel.run(async (context) => {
    let styles = context.workbook.styles;

    // Add a new style to the style collection.
    // Styles is in the Home tab ribbon.
    styles.add("Diagonal Orientation Style");
          
    let newStyle = styles.getItem("Diagonal Orientation Style");
    
    // The "Diagonal Orientation Style" properties.
    newStyle.textOrientation = 38;
    newStyle.autoIndent = true;
    newStyle.includeProtection = true;
    newStyle.shrinkToFit = true;
    newStyle.locked = false;
    
    await context.sync();

    console.log("Successfully added a new style with diagonal orientation to the Home tab ribbon.");
});

tables

Representa una colección de tablas asociadas con el libro.

readonly tables: Excel.TableCollection;

Valor de propiedad

Comentarios

Conjunto de API: ExcelApi 1.1

worksheets

Representa una colección de hojas de cálculo asociadas con el libro.

readonly worksheets: Excel.WorksheetCollection;

Valor de propiedad

Comentarios

Conjunto de API: ExcelApi 1.1

Ejemplos

// Link to full sample: https://raw.githubusercontent.com/OfficeDev/office-js-snippets/prod/samples/excel/54-worksheet/list-worksheets.yaml

await Excel.run(async (context) => {
    const sheets: Excel.WorksheetCollection = context.workbook.worksheets;
    sheets.load("items/name");
    
    await context.sync();

    if (sheets.items.length > 1) {
        console.log(`There are ${sheets.items.length} worksheets in the workbook:`);
    } else {
        console.log(`There is one worksheet in the workbook:`);
    }
    for (let i in sheets.items) {
        console.log(sheets.items[i].name);
    } 
});

Detalles del método

getActiveCell()

Obtiene la celda activa del libro.

getActiveCell(): Excel.Range;

Devoluciones

Comentarios

Conjunto de API: ExcelApi 1.7

Ejemplos

// Link to full sample: https://raw.githubusercontent.com/OfficeDev/office-js-snippets/prod/samples/excel/50-workbook/workbook-get-active-cell.yaml

await Excel.run(async (context) => {

    let myWorkbook = context.workbook;
    let activeCell = myWorkbook.getActiveCell();
    activeCell.load("address");

    await context.sync();
    
    console.log("The active cell is " + activeCell.address);
});

getSelectedRange()

Obtiene del libro el rango único seleccionado actualmente. Si hay varios rangos seleccionados, este método producirá un error.

getSelectedRange(): Excel.Range;

Devoluciones

Comentarios

Conjunto de API: ExcelApi 1.1

Ejemplos

await Excel.run(async (context) => { 
    const selectedRange = context.workbook.getSelectedRange();
    selectedRange.load('address');
    await context.sync();
    console.log(selectedRange.address);
});

load(options)

Pone en cola un comando para cargar las propiedades especificadas del objeto. Debe llamar a context.sync() antes de leer las propiedades.

load(options?: Excel.Interfaces.WorkbookLoadOptions): Excel.Workbook;

Parámetros

options
Excel.Interfaces.WorkbookLoadOptions

Proporciona opciones para las propiedades del objeto que se van a cargar.

Devoluciones

load(propertyNames)

Pone en cola un comando para cargar las propiedades especificadas del objeto. Debe llamar a context.sync() antes de leer las propiedades.

load(propertyNames?: string | string[]): Excel.Workbook;

Parámetros

propertyNames

string | string[]

Una cadena delimitada por comas o una matriz de cadenas que especifican las propiedades que se van a cargar.

Devoluciones

load(propertyNamesAndPaths)

Pone en cola un comando para cargar las propiedades especificadas del objeto. Debe llamar a context.sync() antes de leer las propiedades.

load(propertyNamesAndPaths?: {
            select?: string;
            expand?: string;
        }): Excel.Workbook;

Parámetros

propertyNamesAndPaths

{ select?: string; expand?: string; }

propertyNamesAndPaths.select es una cadena delimitada por comas que especifica las propiedades que se van a cargar y propertyNamesAndPaths.expand es una cadena delimitada por comas que especifica las propiedades de navegación que se van a cargar.

Devoluciones

set(properties, options)

Establece varias propiedades de un objeto al mismo tiempo. Puede pasar un objeto sin formato con las propiedades adecuadas u otro objeto API del mismo tipo.

set(properties: Interfaces.WorkbookUpdateData, options?: OfficeExtension.UpdateOptions): void;

Parámetros

properties
Excel.Interfaces.WorkbookUpdateData

Un objeto JavaScript con propiedades que están estructuradas isomorfamente a las propiedades del objeto en el que se llama al método.

options
OfficeExtension.UpdateOptions

Proporciona una opción para suprimir errores si el objeto properties intenta establecer propiedades de solo lectura.

Devoluciones

void

set(properties)

Establece varias propiedades en el objeto al mismo tiempo, basadas en un objeto cargado existente.

set(properties: Excel.Workbook): void;

Parámetros

properties
Excel.Workbook

Devoluciones

void

toJSON()

Reemplaza el método JavaScript toJSON() para proporcionar una salida más útil cuando se pasa un objeto API a JSON.stringify(). (JSON.stringify, a su vez, llama al toJSON método del objeto que se le pasa). Mientras que el objeto original Excel.Workbook es un objeto API, el toJSON método devuelve un objeto JavaScript simple (escrito como Excel.Interfaces.WorkbookData) que contiene copias superficiales de cualquier propiedad secundaria cargada del objeto original.

toJSON(): Excel.Interfaces.WorkbookData;

Devoluciones

Detalles del evento

onSelectionChanged

Se genera al cambiar la selección en el documento.

readonly onSelectionChanged: OfficeExtension.EventHandlers<Excel.SelectionChangedEventArgs>;

Tipo de evento

Comentarios

Conjunto de API: ExcelApi 1.2