2016-05-16 43 views
0

我嘗試下面的代碼在.jcall給超鏈接到另一個文件將數據導出到Excel中,並給予鏈接

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") 

,但我收到錯誤

錯誤(細胞,「V」,「 setHyperlink「,鏈接): java.lang.IllegalArgumentException:超鏈接的地址必須是有效的URI

回答

0

問題似乎與空間有關。將links替換爲

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

它可以工作。如果你真的需要這些空間,你應該能夠將它們編碼爲%20,並且似乎excel會將其解釋出來。

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