Learn R Programming

XLConnect (version 1.1.0)

setHyperlink-methods: Setting hyperlinks

Description

Sets hyperlinks for specific cells in a workbook.

Usage

# S4 method for workbook,missing,character
setHyperlink(object,formula,sheet,row,col,type,address)
# S4 method for workbook,missing,numeric
setHyperlink(object,formula,sheet,row,col,type,address)
# S4 method for workbook,character,missing
setHyperlink(object,formula,sheet,row,col,type,address)

Arguments

object

The workbook to use

formula

A formula specification in the form Sheet!B8:C17. Use either the argument formula or the combination of sheet, row and col.

sheet

Name or index of the sheet the cell is on. Use either the argument formula or the combination of sheet, row and col.

row

Row index of the cell to apply the cellstyle to.

col

Column index of the cell to apply the cellstyle to.

type

Hyperlink type. See the corresponding "HYPERLINK.*" constants from the XLC object.

address

Hyperlink address. This needs to be a valid URI including scheme. E.g. for email mailto:myself@me.org, for a URL https://www.somewhere.net or for a file file:///a/b/c.dat

Author

Martin Studer
Mirai Solutions GmbH https://mirai-solutions.ch

Details

Sets a hyperlink for the specified cells. Note that cellstyles for hyperlinks can be defined independently using setCellStyle. The arguments are vectorized such that multiple hyperlinks can be set in one method call. Use either the argument formula or the combination of sheet, row and col.

See Also

workbook, setCellStyle

Examples

Run this code
if (FALSE) {
# Load workbook (create if not existing)
wb <- loadWorkbook("setHyperlink.xlsx", create = TRUE)

# Create a sheet named 'mtcars'
createSheet(wb, name = "mtcars")


# Write built-in data set 'mtcars' to the above defined worksheet
writeWorksheet(wb, mtcars, sheet = "mtcars", rownames = "Car")

# Set hyperlinks
links <- paste0("https://www.google.com?q=", gsub(" ", "+", rownames(mtcars)))
setHyperlink(wb, sheet = "mtcars", row = seq_len(nrow(mtcars)) + 1, col = 1,
  type = XLC$HYPERLINK.URL, address = links)

# Save workbook (this actually writes the file to disk)
saveWorkbook(wb)

# clean up 
file.remove("setHyperlink.xlsx")
}

Run the code above in your browser using DataLab