Настройка межсайтовой гиперссылки - PullRequest
0 голосов
/ 14 января 2020

Я хотел бы знать, возможно ли установить ссылку, которая перенаправляет меня на ячейку id1 листа b (A1, B1 и т. Д.), Когда я нажимаю на ячейка 1 листа a (A2, A3 и т. Д.)?

(или лучше создать ссылку из строки 2,3, т. Е. Листа a на столбец A, B, т. Е. Листа b)

library(openxlsx)

a <- data.frame("id" = 1:2, "val" = paste0(1:2, "a"))
b <- data.frame("id1" = 1:5, "id2" = 11:15)

sheets <- list(
  "a" = "a",
  "b" = "b")

wb <- openxlsx::createWorkbook()
addWorksheet(wb, sheets$a)
addWorksheet(wb, sheets$b)

writeData(wb, sheet = sheets$a, x = a, startRow = 1)
writeData(wb, sheet = sheets$b, x = b, startRow = 1)

saveWorkbook(wb, "inst/test/file.xlsx", overwrite = T)

1 Ответ

1 голос
/ 14 января 2020

После того, как вы записали свои данные, но перед тем, как сохранить рабочую книгу, сделайте следующее:

for(i in seq_along(a$id))
{
  link <- makeHyperlinkString(sheets$b, row = 1, col = i, text = a$id[i])
  writeFormula(wb, sheets$a, link, startCol = 1, startRow = i + 1)
}
...