office-js - 将 Excel 表格的整列格式化为字符串

标签 office-js scriptlab

我正在使用 JavaScript API 开发 Excel 加载项以在 Excel Office 365 中构建加载项。
对于 Excel 表,如何将整个列格式化为默认情况下仅包含字符串。 [我需要数字在特定列的所有单元格中显示为 012 而不是 12。]

最佳答案

您可以先将数字格式设置为文本(设置为 @ ,这是 Excel 的格式,用于表示某些内容是文本),然后设置值。

这是一个范围示例(表格非常相似——只需获取列的范围)

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 也应该是微不足道的。

在新的脚本实验室 ( https://aka.ms/getscriptlab ) 中,您只需点击五下即可实时试用此代码段。只需安装 Script Lab 插件(免费),然后在导航菜单中选择“导入”,并使用以下 GIST URL:https://gist.github.com/Zlatkovsky/741c3313825df988ac9840289c012440

关于office-js - 将 Excel 表格的整列格式化为字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43646597/

相关文章:

outlook - JS可以打开Office Add-In吗?

outlook-addin - 调试 Outlook 加载项桌面

excel - 查找表与选择相交

javascript - 对话框的 Url 不适用于 angular.bootstrap(无限 $digest 循环)

javascript - Word 联机加载项 : Using objects across multiple contexts

office-js - `context.document.body.insertOoxml` 破坏文档,使 Word 崩溃

excel - 在 Excel Desktop 中创建和设置时,Office.Settings 无法在 Excel Online 中检索

ms-office - 使用自定义函数提交加载项(更新?)