Форматировать весь столбец таблицы Excel как строку
Я работаю над надстройкой Excel, используя API-интерфейсы JavaScript для создания надстроек в Excel Office 365. Для таблиц Excel, как я могу отформатировать весь столбец, чтобы иметь строки только по умолчанию. [Мне нужно, чтобы числа отображались как 012 вместо 12 во всех ячейках для определенного столбца.]
2 ответа
Вы можете сначала установить форматирование чисел на текст (установите на @
, который является форматом Excel, чтобы сказать, что что-то является текстом), а затем установите значения.
Вот пример Range (таблица будет очень похожа - просто получите диапазон столбца)
try {
await Excel.run(async (context) => {
const sheet = context.workbook.worksheets.getActiveWorksheet();
const range = sheet.getRange("A1:A3");
range.numberFormat = <any>"@";
range.values = [
["012"],
["013"],
["014"]
];
await context.sync();
});
}
catch (error) {
OfficeHelpers.Utilities.log(error);
}
Приведенный выше пример написан на языке TypeScript, но и там, при желании, преобразование в обычный ES5 JS должно быть тривиальным.
Вы можете попробовать этот фрагмент прямо в пять кликов в новой Script Lab ( https://aka.ms/getscriptlab). Просто установите надстройку Script Lab (бесплатно), затем выберите "Импорт" в меню навигации и используйте следующий URL-адрес GIST: https://gist.github.com/Zlatkovsky/741c3313825df988ac9840289c012440
sheet.getRange("A1:A3") будет форматировать только первые три ячейки.
sheet.getRange ("A: A") даст вам весь столбец A, а не только первые 3 ячейки в столбце A.