#reactjs #office-js
#reactjs #office-js
Вопрос:
Я использую API Excel / Office JS в React. Данные перемещаются в диапазоны Excel. Я пытаюсь выполнить следующую логику:
- Проверьте, является ли форматирование диапазона / ячейки общим
- Если это общий формат, установите формат в определенный формат даты и времени
- Если это НЕ общий формат, не меняйте форматирование
Кажется достаточно простым, но, к сожалению, я не могу получить существующий формат из Excel. Он продолжает говорить мне, что это общее, хотя это не так. Проверьте приведенный ниже код. Есть идеи?
Excel.run(async function (context) {
let binding = context.workbook.bindings.getItemOrNullObject(queryId);
await context.sync();
if (!binding.isNullObject) {
let bRange = binding.getRange();
bRange.load('rowCount');
bRange.load('columnCount');
await context.sync();
let dateRange = null;
if (transpose) {
dateRange = bRange.getAbsoluteResizedRange(1, bRange.columnCount);
} else {
dateRange = bRange.getAbsoluteResizedRange(bRange.rowCount, 1);
}
dateRange.load('numberFormat');
await context.sync();
//dateRange.numberFormat[0] is ALWAYS General no matter what the format is
if (dateRange.numberFormat[0] == 'General') {
dateRange.numberFormat = 'yyyy-MM-dd HH:mm:ss';
}
}
return context.sync();
});
Комментарии:
1. Я не могу воспроизвести эту проблему в вашем коде (я не могу запустить ваш код напрямую в моей лаборатории скриптов, поэтому я модифицировал его, после моих изменений он работает здесь хорошо), не могли бы вы, пожалуйста, сохранить свой код в лаборатории скриптов? ссылаясь на эту статью? learn.microsoft.com/en-us/office/dev/add-ins/overview /…