cell/column Excel 中的宽度 Office.js

cell/column width in Excel Office.js

Excel 的最新 Javascript Api 使使用工作表更容易,但我似乎错过了在代码中设置单元格宽度的功能。 Range 对象的格式为 属性,但仅支持字体大小和边框等。

我错过了什么?我正在从任务窗格加载项将日期插入到列中,但默认的单元格宽度意味着用户只能看到“####”并且必须手动调整单元格的大小。不太好

很高兴得知您喜欢 Excel 的新 JavaScript API。实际上,我们正在为 Excel 发布新一波 API,其中包括设置列宽和许多其他令人兴奋的新功能,包括工作表保护、sort/filter 等等。在 GitHub.

上查看

如果您想试用新的 API,请确保您拥有适用于 Windows 或 Office365 的最新 Office 2016。这是说明

  1. 在您的加载项中,在 HTML 中,将现有的 Office.js 脚本引用替换为

      <script src=" https://appsforoffice.microsoft.com/lib/beta/hosted/office.js" type="text/javascript"></script>
    
  2. 如果您希望 IntelliSense 获得更愉快的编码体验,请转到 Scripts/References/_references.js,删除最后两个条目,并将其替换为

/// <reference path=" https://appsforoffice.microsoft.com/lib/beta/hosted/office.js" />
谢谢, 天空

微软

您可以使用 Range 对象将宽度设置为

range.format.columnWidth = 130;

我喜欢 autofitColumns 功能:

range.format.autofitColumns();

唯一一次我不喜欢这个功能是当我在一个单元格中有太多数据时,它会将单元格拉伸到比屏幕还宽,这使得水平滚动变得很糟糕。在那种情况下,我会采用@shyam_ 的回答:

range.format.columnWidth = 130;