Excel.SettableCellProperties interface

Represents the input parameter of setCellProperties.

[ API set: ExcelApi 1.9 ]

Properties

format

Represents the format property.

[ API set: ExcelApi 1.9 ]

hyperlink

Represents the hyperlink property.

[ API set: ExcelApi 1.9 ]

style

Represents the style property.

[ API set: ExcelApi 1.9 ]

textRuns

Represents the textRuns property.

[ API set: RangeTextRun ]

Property Details

format

Represents the format property.

[ API set: ExcelApi 1.9 ]

format?: Excel.CellPropertiesFormat;

Property Value

Represents the hyperlink property.

[ API set: ExcelApi 1.9 ]

hyperlink?: Excel.RangeHyperlink;

Property Value

style

Represents the style property.

[ API set: ExcelApi 1.9 ]

style?: string;

Property Value

string

Examples

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

await Excel.run(async (context) => {
    const sheet = context.workbook.worksheets.getActiveWorksheet();

    // Creating the SettableCellProperties objects to use for the range.
    // In your add-in, these should be created once, outside the function.
    const topHeaderProps: Excel.SettableCellProperties = {
        // The style property takes a string matching the name of an Excel style.
        // Built-in style names are listed in the `BuiltInStyle` enum.
        // Note that a style will overwrite any formatting,
        // so do not use the format property with the style property.
        style: "Heading1"
    };

    const headerProps: Excel.SettableCellProperties = {
        // Any subproperties of format that are not set will not be changed when these cell properties are set.
        format: {
            fill: {
                color: "Blue"
            },
            font: {
                color: "White",
                bold: true
            }
        }
    };

    const nonApplicableProps: Excel.SettableCellProperties = {
        format: {
            fill: {
                pattern: Excel.FillPattern.gray25
            },
            font: {
                color: "Gray",
                italic: true
            }
        }
    };

    const matchupScoreProps: Excel.SettableCellProperties = {
        format: {
            borders: {
                bottom: {
                    style: Excel.BorderLineStyle.continuous
                },
                left: {
                    style: Excel.BorderLineStyle.continuous
                },
                right: {
                    style: Excel.BorderLineStyle.continuous
                },
                top: {
                    style: Excel.BorderLineStyle.continuous
                }
            }
        }
    };

    const range = sheet.getRange("A1:E5");

    // You can use empty JSON objects to avoid changing a cell's properties.
    range.setCellProperties([
        [topHeaderProps, {}, {}, {}, {}],
        [{}, {}, headerProps, headerProps, headerProps],
        [{}, headerProps, nonApplicableProps, matchupScoreProps, matchupScoreProps],
        [{}, headerProps, matchupScoreProps, nonApplicableProps, matchupScoreProps],
        [{}, headerProps, matchupScoreProps, matchupScoreProps, nonApplicableProps]
    ]);

    sheet.getUsedRange().format.autofitColumns();
    await context.sync();
});

textRuns

Represents the textRuns property.

[ API set: RangeTextRun ]

textRuns?: RangeTextRun[];

Property Value