Excel Office.js中的单元格/列宽

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

我错过了什么? 我将date插入到任务窗格外接程序的列中,但默认的单元格宽度意味着用户只能看到“####”并且必须手动调整单元格大小。不是很好

你可以使用Range对象来设置宽度

range.format.columnWidth = 130; 

我很高兴知道你喜欢用于Excel的新JavaScript API。 实际上,我们正在发布新的Excel版本,其中包括设置列宽和其他许多新的令人兴奋的function,包括工作表保护,sorting/过滤等等。 在GitHub上检查一下。

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

  1. 在您的加载项中,使用HTMLreplace现有的Office.js脚本引用

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

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

微软

我喜欢autofitColumns函数:

 range.format.autofitColumns(); 

我不喜欢这个function的唯一时候是当我在一个单元中有这么多的数据时,它将单元拉伸得比屏幕更宽,这使得水平滚动变得很悲惨。 在这种情况下,我用@ shyam_的答案去:

 range.format.columnWidth = 130;