openxlsx将单元格格式化为带逗号的数字,并将0值替换为破折号

时间:2019-10-30 23:20:25

标签: r openxlsx

我正在尝试编写一个工作簿脚本,以匹配一种格式,该格式将自动将任何0值更改为破折号,就像在Excel中单击“,”一样。我尝试使用numFmt ='COMMA',但是无法产生破折号。我尝试了几种自定义格式,但是没有运气。有没有可以给我逗号,没有小数位并用破折号替换0的代码?我当前的代码如下。

    addStyle(wb, sheet = "Sheet Name", style = createStyle(numFmt = "#,0"), rows = 4:15, cols = 2:17, gridExpand = T)

1 个答案:

答案 0 :(得分:0)

我想这比R更像是一个Excel问题。在Excel中,自定义类型的作用类似于

positive number; negative number; zero

因此,如果要将零转换为破折号,则必须为:

#,##0;-#,##0;-

因此,根据您的代码,它将是:

 addStyle(wb, sheet = "Sheet Name", style = createStyle(numFmt = "#,##0;-#,##0;-"), rows = 4:15, cols = 2:17, gridExpand = T)