Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

How to I add a hyperlink to a cell in axlsx?

With the spreadsheet gem, you can run Spreadsheet::Link.new('http://hyperlinkhere.com', 'Some words') to make a spreadsheet with a cell containing the string "Some words" with a hyperlink leading to "http://hyperlinkhere.com."

What's the axlsx equivalent?

EDIT: What if I want to write a row with more than one cell?

With spreadsheet, you can do this:

        newSheetRow[13] = Spreadsheet::Link.new('url.com','text')
        newSheetRow[14] = 'some text'

How do I do that with axlsx's .add_row method?

like image 910
Username Avatar asked Apr 23 '15 19:04

Username


1 Answers

You can add both links within workbook and URLs.

p = Axlsx::Package.new
book = p.workbook
book.add_worksheet(:name => 'hyperlinks') do |sheet|
  # external references
  sheet.add_row ['axlsx']
  sheet.add_hyperlink :location => 'https://github.com/randym/axlsx', :ref => sheet.rows.first.cells.first
  # internal references
  sheet.add_hyperlink :location => "'Next Sheet'!A1", :ref => 'A2', :target => :sheet
  sheet.add_row ['next sheet']
end
like image 92
Shifa Khan Avatar answered Oct 03 '22 23:10

Shifa Khan