Excel.ChartDataTable class

Represents the data table object of a chart.

Extends

Remarks

[ API set: ExcelApi 1.14 ]

Properties

context

The request context associated with the object. This connects the add-in's process to the Office host application's process.

format

Represents the format of a chart data table, which includes fill, font, and border format.

showHorizontalBorder

Specifies whether to display the horizontal border of the data table.

showLegendKey

Specifies whether to show the legend key of the data table.

showOutlineBorder

Specifies whether to display the outline border of the data table.

showVerticalBorder

Specifies whether to display the vertical border of the data table.

visible

Specifies whether to show the data table of the chart.

Methods

load(options)

Queues up a command to load the specified properties of the object. You must call context.sync() before reading the properties.

load(propertyNames)

Queues up a command to load the specified properties of the object. You must call context.sync() before reading the properties.

load(propertyNamesAndPaths)

Queues up a command to load the specified properties of the object. You must call context.sync() before reading the properties.

set(properties, options)

Sets multiple properties of an object at the same time. You can pass either a plain object with the appropriate properties, or another API object of the same type.

set(properties)

Sets multiple properties on the object at the same time, based on an existing loaded object.

toJSON()

Overrides the JavaScript toJSON() method in order to provide more useful output when an API object is passed to JSON.stringify(). (JSON.stringify, in turn, calls the toJSON method of the object that is passed to it.) Whereas the original Excel.ChartDataTable object is an API object, the toJSON method returns a plain JavaScript object (typed as Excel.Interfaces.ChartDataTableData) that contains shallow copies of any loaded child properties from the original object.

Property Details

context

The request context associated with the object. This connects the add-in's process to the Office host application's process.

context: RequestContext;

Property Value

format

Represents the format of a chart data table, which includes fill, font, and border format.

readonly format: Excel.ChartDataTableFormat;

Property Value

Remarks

[ API set: ExcelApi 1.14 ]

Examples

// Link to full sample: https://raw.githubusercontent.com/OfficeDev/office-js-snippets/prod/samples/excel/10-chart/chart-data-table.yaml

// This function adjusts the display and format of a chart data table that already exists on the worksheet.
await Excel.run(async (context) => {
  // Retrieve the chart named "SalesChart" from the "Sample" worksheet.
  const chart = context.workbook.worksheets.getItem("Sample").charts.getItem("SalesChart");

  // Get the chart data table object and load its properties.
  const chartDataTable = chart.getDataTableOrNullObject();
  chartDataTable.load();

  // Set the display properties of the chart data table.
  chartDataTable.showLegendKey = true;
  chartDataTable.showHorizontalBorder = false;
  chartDataTable.showVerticalBorder = true;
  chartDataTable.showOutlineBorder = true;

  // Retrieve the chart data table format object and set font and border properties. 
  const chartDataTableFormat = chartDataTable.format;
  chartDataTableFormat.font.color = "#B76E79";
  chartDataTableFormat.font.name = "Comic Sans";
  chartDataTableFormat.border.color = "blue";
  await context.sync();
});

showHorizontalBorder

Specifies whether to display the horizontal border of the data table.

showHorizontalBorder: boolean;

Property Value

boolean

Remarks

[ API set: ExcelApi 1.14 ]

Examples

// Link to full sample: https://raw.githubusercontent.com/OfficeDev/office-js-snippets/prod/samples/excel/10-chart/chart-data-table.yaml

// This function adjusts the display and format of a chart data table that already exists on the worksheet.
await Excel.run(async (context) => {
  // Retrieve the chart named "SalesChart" from the "Sample" worksheet.
  const chart = context.workbook.worksheets.getItem("Sample").charts.getItem("SalesChart");

  // Get the chart data table object and load its properties.
  const chartDataTable = chart.getDataTableOrNullObject();
  chartDataTable.load();

  // Set the display properties of the chart data table.
  chartDataTable.showLegendKey = true;
  chartDataTable.showHorizontalBorder = false;
  chartDataTable.showVerticalBorder = true;
  chartDataTable.showOutlineBorder = true;

  // Retrieve the chart data table format object and set font and border properties. 
  const chartDataTableFormat = chartDataTable.format;
  chartDataTableFormat.font.color = "#B76E79";
  chartDataTableFormat.font.name = "Comic Sans";
  chartDataTableFormat.border.color = "blue";
  await context.sync();
});

showLegendKey

Specifies whether to show the legend key of the data table.

showLegendKey: boolean;

Property Value

boolean

Remarks

[ API set: ExcelApi 1.14 ]

Examples

// Link to full sample: https://raw.githubusercontent.com/OfficeDev/office-js-snippets/prod/samples/excel/10-chart/chart-data-table.yaml

// This function adjusts the display and format of a chart data table that already exists on the worksheet.
await Excel.run(async (context) => {
  // Retrieve the chart named "SalesChart" from the "Sample" worksheet.
  const chart = context.workbook.worksheets.getItem("Sample").charts.getItem("SalesChart");

  // Get the chart data table object and load its properties.
  const chartDataTable = chart.getDataTableOrNullObject();
  chartDataTable.load();

  // Set the display properties of the chart data table.
  chartDataTable.showLegendKey = true;
  chartDataTable.showHorizontalBorder = false;
  chartDataTable.showVerticalBorder = true;
  chartDataTable.showOutlineBorder = true;

  // Retrieve the chart data table format object and set font and border properties. 
  const chartDataTableFormat = chartDataTable.format;
  chartDataTableFormat.font.color = "#B76E79";
  chartDataTableFormat.font.name = "Comic Sans";
  chartDataTableFormat.border.color = "blue";
  await context.sync();
});

showOutlineBorder

Specifies whether to display the outline border of the data table.

showOutlineBorder: boolean;

Property Value

boolean

Remarks

[ API set: ExcelApi 1.14 ]

Examples

// Link to full sample: https://raw.githubusercontent.com/OfficeDev/office-js-snippets/prod/samples/excel/10-chart/chart-data-table.yaml

// This function adjusts the display and format of a chart data table that already exists on the worksheet.
await Excel.run(async (context) => {
  // Retrieve the chart named "SalesChart" from the "Sample" worksheet.
  const chart = context.workbook.worksheets.getItem("Sample").charts.getItem("SalesChart");

  // Get the chart data table object and load its properties.
  const chartDataTable = chart.getDataTableOrNullObject();
  chartDataTable.load();

  // Set the display properties of the chart data table.
  chartDataTable.showLegendKey = true;
  chartDataTable.showHorizontalBorder = false;
  chartDataTable.showVerticalBorder = true;
  chartDataTable.showOutlineBorder = true;

  // Retrieve the chart data table format object and set font and border properties. 
  const chartDataTableFormat = chartDataTable.format;
  chartDataTableFormat.font.color = "#B76E79";
  chartDataTableFormat.font.name = "Comic Sans";
  chartDataTableFormat.border.color = "blue";
  await context.sync();
});

showVerticalBorder

Specifies whether to display the vertical border of the data table.

showVerticalBorder: boolean;

Property Value

boolean

Remarks

[ API set: ExcelApi 1.14 ]

Examples

// Link to full sample: https://raw.githubusercontent.com/OfficeDev/office-js-snippets/prod/samples/excel/10-chart/chart-data-table.yaml

// This function adjusts the display and format of a chart data table that already exists on the worksheet.
await Excel.run(async (context) => {
  // Retrieve the chart named "SalesChart" from the "Sample" worksheet.
  const chart = context.workbook.worksheets.getItem("Sample").charts.getItem("SalesChart");

  // Get the chart data table object and load its properties.
  const chartDataTable = chart.getDataTableOrNullObject();
  chartDataTable.load();

  // Set the display properties of the chart data table.
  chartDataTable.showLegendKey = true;
  chartDataTable.showHorizontalBorder = false;
  chartDataTable.showVerticalBorder = true;
  chartDataTable.showOutlineBorder = true;

  // Retrieve the chart data table format object and set font and border properties. 
  const chartDataTableFormat = chartDataTable.format;
  chartDataTableFormat.font.color = "#B76E79";
  chartDataTableFormat.font.name = "Comic Sans";
  chartDataTableFormat.border.color = "blue";
  await context.sync();
});

visible

Specifies whether to show the data table of the chart.

visible: boolean;

Property Value

boolean

Remarks

[ API set: ExcelApi 1.14 ]

Examples

// Link to full sample: https://raw.githubusercontent.com/OfficeDev/office-js-snippets/prod/samples/excel/10-chart/chart-data-table.yaml

// This function adds a data table to a chart that already exists on the worksheet. 
await Excel.run(async (context) => {
  // Retrieve the chart named "SalesChart" from the "Sample" worksheet.
  const chart = context.workbook.worksheets.getItem("Sample").charts.getItem("SalesChart");

  // Get the data table object for the chart and set it to visible.
  const chartDataTable = chart.getDataTableOrNullObject();
  chartDataTable.load("visible");
  chartDataTable.visible = true;
  await context.sync();
});

Method Details

load(options)

Queues up a command to load the specified properties of the object. You must call context.sync() before reading the properties.

load(options?: Excel.Interfaces.ChartDataTableLoadOptions): Excel.ChartDataTable;

Parameters

options
Excel.Interfaces.ChartDataTableLoadOptions

Provides options for which properties of the object to load.

Returns

load(propertyNames)

Queues up a command to load the specified properties of the object. You must call context.sync() before reading the properties.

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

Parameters

propertyNames

string | string[]

A comma-delimited string or an array of strings that specify the properties to load.

Returns

load(propertyNamesAndPaths)

Queues up a command to load the specified properties of the object. You must call context.sync() before reading the properties.

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

Parameters

propertyNamesAndPaths

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

propertyNamesAndPaths.select is a comma-delimited string that specifies the properties to load, and propertyNamesAndPaths.expand is a comma-delimited string that specifies the navigation properties to load.

Returns

set(properties, options)

Sets multiple properties of an object at the same time. You can pass either a plain object with the appropriate properties, or another API object of the same type.

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

Parameters

properties
Excel.Interfaces.ChartDataTableUpdateData

A JavaScript object with properties that are structured isomorphically to the properties of the object on which the method is called.

options
OfficeExtension.UpdateOptions

Provides an option to suppress errors if the properties object tries to set any read-only properties.

Returns

void

set(properties)

Sets multiple properties on the object at the same time, based on an existing loaded object.

set(properties: Excel.ChartDataTable): void;

Parameters

Returns

void

toJSON()

Overrides the JavaScript toJSON() method in order to provide more useful output when an API object is passed to JSON.stringify(). (JSON.stringify, in turn, calls the toJSON method of the object that is passed to it.) Whereas the original Excel.ChartDataTable object is an API object, the toJSON method returns a plain JavaScript object (typed as Excel.Interfaces.ChartDataTableData) that contains shallow copies of any loaded child properties from the original object.

toJSON(): Excel.Interfaces.ChartDataTableData;

Returns