1

多かれ少なかれ毎週再実行する必要があるレポートを準備しています。Excel でクライアントに送信する必要があり、R 用の XLConnect パッケージを使用して大成功を収めていますが、自分では解決できない問題が 1 つあります。

次のコードがあるとします。

simple <- data.frame(a = c(1,2,3,,4,5), b = c(1,2,3,4,5))

library(XLConnect)
prcntg <- createCellStyle(wb)
setDataFormat(prcntg, format = "0.0")

wb <- loadWorkbook("foo.xlsx", create = FALSE)

sheet <- "bar"
createSheet(wb, sheet)

writeWorksheet(wb, simple, sheet = sheet)
rows <- 1:5
cols <- 1:2
setCellStyle(wb, sheet = sheet, row = rows, col = cols, cellstyle = prcntg)

値を次のように出力したい:

a   | b
1.0 | 1.0
2.0 | 2.0
3.0 | 3.0
etc.

しかし、それらは次のようにワークシートに入ります。

a | b
1 | 1
2 | 2
3 | 3
etc.

後者ではなく前者を取得するにはどうすればよいですか。ここで見たドキュメントと投稿に基づいて: https://miraisolutions.wordpress.com/2011/08/31/xlconnect-a-platform-independent-interface-to-excel/

私はすべてを正しく行っているように感じますが、明らかにそうではありません。

4

1 に答える 1

1

以下は私のために働くようです:

wb <- loadWorkbook("~/Desktop/foo.xlsx", create = TRUE)
prcntg <- createCellStyle(wb)
setDataFormat(prcntg, format = "0.0")

sheet <- "bar"
createSheet(wb, sheet)

writeWorksheet(wb, simple, sheet = sheet)
rows <- 2:6
cols <- 1:2
setCellStyle(wb, sheet = sheet, row = rep(2:6,times = 2), col = rep(1:2,times = 6), cellstyle = prcntg)
saveWorkbook(wb)

これは(警告付きで)実行されます。の row 引数と col 引数の指定に注意してくださいsetCellStyle。ただし、最近 XLConnect が少しおかしくなっているので、これがうまくいくとは思いたくないです (私は OS X を使用していて、失敗したため 2.15.0 のソースからビルドする必要がありました)。 CRAN がチェックするため、バイナリはありません)。

于 2012-04-24T22:17:20.333 に答える