将数据导出到Excel并提供超链接

时间:2016-05-16 05:56:01

标签: r r-xlsx

我尝试使用下面的代码来提供指向另一个文件的超链接

library(xlsx)

wb <- createWorkbook()
sheet1 <- createSheet(wb, "Sheet1")
rows <- createRow(sheet1, 1:10) # 10 rows
cells <- createCell(rows, colIndex=1:8) # 8 columns
links <- c("D://r datasets/sales data.xlsx")
names(links) <- c("hyperlinks")
for (row in 1:length(links)) {
  setCellValue(cells[[row,1]], names(links)[row])
  addHyperlink(cells[[row,1]], links[row])
}
saveWorkbook(wb, "links.xlsx")
shell.exec("links.xlsx")

但是收到错误

  

.jcall错误(单元格,&#34; V&#34;,&#34; setHyperlink&#34;,链接):     java.lang.IllegalArgumentException:超链接的地址必须是有效的URI

1 个答案:

答案 0 :(得分:0)

问题似乎与空间有关。将links替换为

links <- c("D:/rdatasets/salesdata.xlsx")

它有效。如果你真的需要这些空格,你应该能够将它们编码为%20,而且看起来excel可以找出它。

links <- c("D:/r%20datasets/sales%20data.xlsx")