R – Autofit Excel列宽

如何使用openxlsx自动设置列宽?

其中一个列有一个datevariables(例如21-08-2017 ),如果使用ctrl+c从Excel中复制,并正常粘贴到其他地方,它显示为####### (如果列宽增加显示在Excel中的内容,它正常粘贴)。 我想将重复任务整合到我的代码中。 这是我现在使用的:

 WB <- loadWorkbook(File) addWorksheet(WB, Sheet) writeDataTable(WB, Sheet, DF, withFilter=F, bandedRows=F, firstColumn=T) saveWorkbook(WB, File, overwrite =TRUE) 

我已经在这里附加了相关的代码,我也正在做基于表值的条件格式。 请在这里build议一种整合autofit列宽的方法。

编辑:默认情况下,来自R的XLSX输出具有默认的8.43列宽,我想要将其设置为根据单元格内容自动调整,或者手动设置每列。

到国防部:这是一个问题,我正试图解决R,使用openxlsx。 无论如何,感谢您的关注。

好的,我在文档中进行了大量的search之后得到了它。 似乎很less有人实际上使用这个从网上解决scheme的缺乏…

 setColWidths(WB, Sheet, cols = 1:ncol(DF), widths = "auto") 

但是,这仍然没有给出预期的结果,date列仍然有点短,并显示######## ; 而列标题也不适合(因为它们被格式化为粗体 )。

编辑:

最后,select添加c(7.5, 10, "auto", ...)代替"auto" ,这不是完全dynamic的,而是现在解决了这个问题。 希望看到更好的答案。