Office.js Excel:格式化并写入可见cel
Office.js Excel: Format and write to visible cel
有没有办法格式化Excel.RangeView?不仅要设置值,还要更改背景颜色等?我正在使用此代码为所有单元格设置相同的值,并需要用红色突出显示它们
const range = context.workbook.getSelectedRange().getVisibleView();
range.load(['rowCount', 'columnCount']);
await context.sync();
range.set({
values: Array(range.rowCount)
.fill(0)
.map(() =>
Array(range.columnCount)
.fill(0)
.map(() => value)
),
// TODO: investigate why this is not working:
// format: {
// font: {
// color: 'red',
// },
// },
});
如果我对你的问题理解正确,我想你想改变范围的背景颜色和字体颜色,因此你可以使用以下 API
range.format.fill.color
range.format.font.color
range.format.fill.color = "#4472C4";
range.format.font.color = "white";
可在此处找到更多信息 url:
https://docs.microsoft.com/en-us/javascript/api/excel/excel.rangefill?view=office-js
您混淆了 Range 和 RangeView 对象。您称为 range
的变量实际上是一个 RangeView 对象。 RangeView.set
只能设置RangeView 的属性。 RangeView 对象没有 format
属性。尝试使用 Worksheet.getRange(myRangeView.cellAddresses)
.
将 RangeView 转换为 Range
有没有办法格式化Excel.RangeView?不仅要设置值,还要更改背景颜色等?我正在使用此代码为所有单元格设置相同的值,并需要用红色突出显示它们
const range = context.workbook.getSelectedRange().getVisibleView();
range.load(['rowCount', 'columnCount']);
await context.sync();
range.set({
values: Array(range.rowCount)
.fill(0)
.map(() =>
Array(range.columnCount)
.fill(0)
.map(() => value)
),
// TODO: investigate why this is not working:
// format: {
// font: {
// color: 'red',
// },
// },
});
如果我对你的问题理解正确,我想你想改变范围的背景颜色和字体颜色,因此你可以使用以下 API
range.format.fill.color
range.format.font.color
range.format.fill.color = "#4472C4";
range.format.font.color = "white";
可在此处找到更多信息 url: https://docs.microsoft.com/en-us/javascript/api/excel/excel.rangefill?view=office-js
您混淆了 Range 和 RangeView 对象。您称为 range
的变量实际上是一个 RangeView 对象。 RangeView.set
只能设置RangeView 的属性。 RangeView 对象没有 format
属性。尝试使用 Worksheet.getRange(myRangeView.cellAddresses)
.