gpt4 book ai didi

r - R 单元格合并和居中内容中的 Openxlsx

转载 作者:行者123 更新时间:2023-12-04 21:29:11 32 4
gpt4 key购买 nike

我正在使用 openxlsx在 r 中创建具有某些格式参数的 excel 文件。以下是可重用的代码:

library(openxlsx)
wb <- createWorkbook()
addWorksheet(wb, "TestSheet")
df <- mtcars
df$Car <- row.names(mtcars)
row.names(df) <- NULL
df <- df[,c(length(df), 1:length(df)-1)]

forTopTit <- createStyle(fontColour = "#ffffff", fgFill = "#F4D03F",halign = "center",wrapText = TRUE,valign = "center")
forColHdr <- createStyle(fontColour = "#ffffff", fgFill = "#4F81BD",halign = "center",wrapText = TRUE,valign = "center")
forDatStl <- createStyle(fontColour = "#ffffff", halign="center")

writeData(wb,"TestSheet", "THIS IS A TEST MESSAGE", startCol = 1,startRow = 1,colNames = FALSE, rowNames = TRUE,
headerStyle = forTopTit,borders = "surrounding",borderStyle = "medium")

writeData(wb,"TestSheet", df, startCol = 1,startRow = 2,colNames = TRUE,rowNames = FALSE,
headerStyle = forColHdr,borders='all',borderStyle = "thin")
mergeCells(wb, "TestSheet", cols=1:length(df), rows=1)
setColWidths(wb, "TestSheet", ignoreMergedCells = TRUE,cols = 1:ncol(df), widths = "auto")
openXL(wb)

我面临两个问题:
  • 我试图在第一列第一行(这是一个合并的单元格)中创建的标题总是左对齐,并且没有应用任何颜色。
  • 我想将第 3 列第 2 行的数据居中,这是我无法做到的。我尝试使用以下代码:

    addStyle(wb, "TestSheet", style=forDatSTL, rows = 3:nrow(df), cols=3:length(df), gridExpand=TRUE)

  • 上述类型隐藏了所有数据点,尽管它仍然保留在单元格中。我看不到它们,但是当我选择单元格时,我可以在工作表上方的摘要行中看到它。我正在使用 Ubuntu 18.04 和 Libre Office Calc。

    最佳答案

    您的单元格被“隐藏”了,因为您设置了颜色 #ffffff ,即为白色,背景为白色。

    使用另一种颜色:

    forDatStl <- createStyle(fontColour = "#000000", halign="center")

    要将合并的单元格居中:
    centerStyle <- createStyle(halign = "center")
    mergeCells(wb, "TestSheet", cols=1:length(df), rows=1)
    addStyle(wb, "TestSheet", centerStyle, rows = 1, cols = 1)

    enter image description here

    关于r - R 单元格合并和居中内容中的 Openxlsx,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58743888/

    32 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com