Create hyperlinks by dragging and dropping, or with the Microsoft Excel HYPERLINK function. Remove hyperlinks manually, or with a macro. Hyperlink security warnings. Make a clickable table of contents in an Excel workbook
Tip: Also see workaround for clickable hyperlinks in pivot tables.
In a Microsoft Excel worksheet, you can create a hyperlink in any cell. Then, click that hyperlink to go to the specified location.
Here are four ways create a hyperlink in an Excel spreadsheet -- click a link to go to those instructions, below:
Type a Website URL
If you type a valid website address in a cell, Excel should automatically create a hyperlink, when you press Enter. For example,
The text changes to a hyperlink, and you can click the link to go to the Contextures website.
Tip: If you want to stop hyperlinks from being automatically created in Excel, follow the instructions here.
Another way to add a hyperlink is by using a built-in Excel command - Insert Hyperlink.
Start the Link
To use the Insert Hyperlink command, follow these steps to get started:
Text to Display
At the top of the Insert Hyperlink dialog box, there is a "Text to Display" box. What you see in the Text to Display box depends on what is in the cell where you're creating the hyperlink.
Here are the 4 different types of content that affect the Text to Display option, with details below:
a) Text in Cell
If the selected cell contains text, that text will appear in the Text to Display box.
b) Empty Cell
If the selected cell is empty, the sheet name, and cell A1 will appear in the Text to Display box.
c) Number in Cell
If the selected cell contains a real number, you will not be able to edit the Text to Display box.
The box contents are dimmed out, and it shows this message: < < Selection in Document > >
If you want to edit the Text to Display:
d) "Text" Number in Cell
If the selected cell contains a "text" number (formatted as text, or starting with an apostrophe), that text number will appear in the Text to Display box.
Add a Screen Tip (Optional)
When you point to a cell that contains a hyperlink, its Screen Tip appears. You can enter your own text for the Screen Tip, or leave this setting empty.
NOTE: If you leave the Screen Tip empty, the full hyperlink address will appear in the Screen Tip.
To add your own text for the Screen Tip:
Choose Link Type
There are four options in the "Links To" panel, in the Insert Hyperlink window:
At the left side of the Insert Hyperlink window, click the link type that you need.
Existing File or Web Page
Use this option, if you want to make it easy for people to open another Excel file, or go to a web page, for more information.
If you're creating hyperlinks within an Excel file, the quickest and easiest method is to use drag and drop. For example, you could create a table of contents sheet (TOC), in a workbook, with links to other sheet.
To see a quick overview of how you can create a hyperlink by drag and drop, you can watch this short video. The written instructions are below the video.
If you have trouble dragging to a different sheet, drag to a nearby blank cell, then cut and paste onto the other sheet. This animated gif shows those steps.
Follow these steps to create drag and drop hyperlinks.
Click that link to go to the destination.
If you don't want hyperlinks automatically created when you type a website address, you can turn the hyperlinking feature off.
To see a quick overview of how you can stop automatic hyperlinks from being created automatically, you can watch this short video. The written instructions are below the video.
To turn the hyperlink option off, follow these steps:
Hyperlink Security Warning
In some versions of Excel, you might see a security warning (shown below), when you click on a worksheet hyperlink.
Every morning, I see these messages after clicking on worksheet links that I know are safe, such as the Canadian government's weather forecast, and pages on my own website!
Warning Message Text
For example, the screen shot below shows the message I see after clicking a link to the Microsoft site.
Here is the text shown in the warning message:
Cannot Turn Warnings Off
These warnings are part of Microsoft's security system, and there's no setting in Excel where you can turn those safety warnings off.
Also, there's no list where you can "whitelist" specific websites, to assure Excel that they're safe. No matter how many times you've previously clicked a link, you'll get the warning message.
Click one of the buttons, based on your trust of the destination website:
This video shows a quick overview of how you can create clickable hyperlinks with the Excel HYPERLINK function. There are written steps and examples below the video.
Instead of creating hyperlinks manually, you can use the HYPERLINK function to build clickable links.
The HYPERLINK function can open a document, or jump to a specific location, so you can:
For example, if there is a list of people's names and email addresses on an Excel worksheet, HYPERLINK can create a link that shows the name, and opens a blank email addressed to that person.
The HYPERLINK function has two arguments in its syntax:
For the HYPERLINK function, there is a character limit when you build the link_location string.
If you exceed the limit, the formula result will be a #VALUE error.
HYPERLINK Function Examples
See the following sections for HYPERLINK function examples:
1) HYPERLINK Example - Website
In the screen shot below, there are company names in column A, and a URL for each company's website in column B.
In the HYPERLINK formula, both arguments will be used:
To create a hyperlink for each address, in column C, follow these steps:
The formula result shows the name from cell A2.
If you click the link, it goes to the company website URL from cell B2.
2) HYPERLINK Example - Email
The HYPERLINK function can also create a link that opens an email message.
In the example shown below, there are email addresses in column A, and the HYPERLINK formula will be added in column B.
To create an email link, the Location_Link text string needs to start with "mailto:"
Email Message Settings
For email hyperlinks, that start with "mailto:" you can include extra information in the link_location argument.
For example, the following formula includes text for the email subject line, and for the email body
Here's what the email looks like, if you click the HYPERLINK formula link.
MailTo - Subject and Body Text
To include email subject and body text in the HYPERLINK formula, the link needs to follow the internet standards, using the syntax described in the RFC Editor, in the mailto URL scheme documentation.
Add a Line Break
There are email URL examples in the RFC Editor, mailto URL scheme documentation, section 6. You can adapt those examples, and use them to build link_location strings for the Excel HYPERLINK function.
I found those examples, when I wanted to put a line break in a message body. Some of the examples show the special code that you can use, to indicate a line break:
For example, the following formula combines gets the email address from cell B5, then adds a subject line.
In the message body, there are two lines of text, separated by a line break.
With a HYPERLINK formula, you can link to a location in the current Excel workbook, or to another Excel file. This video shows the steps, and there are written steps below the video.
TIP: To follow along with this video, you can download the Open Excel Files with Hyperlinks workbook.
You can use a HYPERLINK formula to create a link that goes to a cell or range somewhere within the current workbook. The trick is to add a pound sign (#) at the start of the address.
Below, there are 6 examples for HYPERLINK formulas within the same workbook:
1) Type the Address
Start with a #, then type the sheet name and cell reference.
Optional - Type a friendly name, such as "Budget" to appear in the cell:
2) Use Cell References
Use the & operator to create a link location.
In this example, the sheet name is in cell B5, the cell address is in C5, and the friendly name is in cell D5.
3) Type a Range Name
For a link to a workbook-level named range in the same workbook, just use the range name as the link location.
4) Next Empty Cell
Go to the empty cell at the end of a worksheet list, or a named table.
5) Worksheet List
In cell B1, the formula finds the first empty cell after the worksheet list in column A:
To find the empty row number, add the count of items in column A, plus the row number for the starting cell.
6) Named Table
In cell E1, the formula finds the first empty cell after the named table in column D:
To find the empty row number, the formula calculates the SUM of:
To create a link to a different workbook, in the same folder, just use the file name as the link_location argument for the HYPERLINK function.
For files that are up a level or more in the hierarchy, use two periods and a backslash for each level.
Use Cell References
Or, instead of typing the file path details in the HYPERLINK formula, you can refer to cells that contain the location text.
In the screen shot below, the formula in cell E3 refers to the address in C3, and the friendly name in cell D3:
Below are the instructions for two methods of removing hyperlinks
In Excel 2010 or later:
In Excel 2010, you can quickly remove hyperlinks from selected cells. (Thanks to Sam for this tip.)
To see the steps, watch this Excel Quick Tips video.
In Excel 2007 and earlier versions:
To remove hyperlinks from a group of cells, you can copy and paste the cells as values. To see the steps, watch this Excel Quick Tips video.
Instead of manually removing the hyperlinks, you can you can use the following macro code. It deletes all hyperlinks in the selected cells, and leaves just the cell text.
Copy this code into a regular module in your workbook, then select the cells, and run the delHyperlinks macro.
Sub delHyperlinks() 'posted by Rick Rothstein Selection.Hyperlinks.Delete End Sub
Point to Hyperlink
Follow these steps to make the pointing hand appear anywhere in a hyperlink cell, and see how to select a hyperlinked cell, without following the link.
Show the Pointing Hand
If a wide cell contains a short hyperlink, the pointing hand will only appear when it's over the text, not in the empty space. To fix that:
Select a Hyperlink Cell
If you need to select a hyperlink cell, perhaps to edit the text, without following the link:
Add Hyperlink in Threaded Comment
Thanks to Christian Back (LinkedIn profile), who alerted me to this helful new feature in threaded comments.
In Excel 365, you can add clickable hyperlinks in Excel's threaded comments. That makes it easy to provide links to related information, without filling the worksheet cells with hyperlinks.
If you're not familiar with threaded comments, see the basic steps on my Threaded Comments page. You can also download the Comment Hyperlinks sample file, in the download section, at the end of this page.
Follow Hyperlink in Comment
To use a threaded comment hyperlink, follow these steps:
See Hyperlinks in Comments Pane
In some cases, the Ctrl + click doesn't work, when I use the hyperlink in the cell's pop-up threaded comments.
If that happens in your version of Excel too, you can open the Comments Taskpane, and then Ctrl + Click the hyperlinks there.
For details on opening the taskpane, and adjusting it, go to the Threaded Comments macros page.
The following code will create a Table of Contents in an Excel file, with a list of all the visible worksheets, and a hyperlink to cell A1 on each sheet. You can get this code in a sample file -- look for download #3 in the list below
Tip: On each worksheet, put a hyperlink back to the Table of Contents sheet.
Sub CreateTOC() Dim wsA As Worksheet Dim ws As Worksheet Dim wsTOC As Worksheet Dim lRow As Long Dim rngList As Range Dim lCalc As Long Dim strTOC As String Dim strCell As String lCalc = Application.Calculation On Error GoTo errHandler Application.EnableEvents = False Application.ScreenUpdating = False Application.Calculation = xlCalculationManual strTOC = "TOC" strCell = "A1" Set wsA = ActiveSheet On Error Resume Next Set wsTOC = Sheets(strTOC) On Error GoTo errHandler If wsTOC Is Nothing Then Set wsTOC = Sheets.Add(Before:=Sheets(1)) wsTOC.Name = strTOC Else wsTOC.Cells.Clear End If With wsTOC .Range("B1").Value = "Sheet Name" lRow = 2 For Each ws In ActiveWorkbook.Worksheets If ws.Visible = xlSheetVisible _ And ws.Name <> strTOC Then .Cells(lRow, 2).Value = ws.Name .Hyperlinks.Add _ Anchor:=.Cells(lRow, 2), _ Address:="", _ SubAddress:="'" & ws.Name _ & "'!" & strCell, _ ScreenTip:=ws.Name, _ TextToDisplay:=ws.Name lRow = lRow + 1 End If Next ws Set rngList = .Cells(1, 2).CurrentRegion rngList.EntireColumn.AutoFit .Rows(1).Font.Bold = True End With Application.ScreenUpdating = True wsTOC.Activate wsTOC.Cells(1, 2).Activate exitHandler: Application.EnableEvents = True Application.ScreenUpdating = True Application.Calculation = lCalc Set rngList = Nothing Set wsTOC = Nothing Set ws = Nothing Set wsA = Nothing Exit Sub errHandler: MsgBox "Could not create list" Resume exitHandler End Sub
Clickable Hyperlinks for Export to PDF
In some versions of Excel, you might have a problem with your hyperlinks, when you create a PDF file from your Excel workbook.
Links Not Clickable in PDF
In the PDF file, some of your hyperlinks might not be clickable, if:
For example, the PDF hyperlink won't work if the friendly name is "Click for info", and the link location is google.com
Avoid the Problem
To avoid this problem, either:
You can use a macro or a User Defined function (UDF) to extract the address from a hyperlink.
You can use a macro to extract the address from each hyperlink on a worksheet, and store it in the cell to the right of each hyperlink cell. Thanks to Fabio Puccinelli for this example.
NOTE: Hyperlinks that you create with the HYPERLINK function are not recognized as worksheet Hyperlinks. Only hyperlinks that you type or insert are recognized.
Sub ExtractHL_AdjacentCell() Dim HL As Hyperlink For Each HL In ActiveSheet.Hyperlinks HL.Range.Offset(0, 1).Value = HL.Address Next End Sub
There's no built in function to extract the URL or email address from a hyperlink. You can create your own Excel function -- a User Defined Function (UDF) -- to extract the address.
To see a quick overview of how you can create your own UDF to extract a hyperlink location, you can watch this short video. The written instructions are below the video.
NOTE: Hyperlinks that you create with the HYPERLINK function are not recognized as worksheet Hyperlinks.
Copy this code into a regular module in your workbook, then use the HLink function in that workbook, just like any other function. For example, to find the URL for a hyperlink in cell B3, use this formula:
Note: If multiple cells are selected, the formula will show the hyperlink (if any) from the first cell in the selected range.
Function HLink(rng As Range) As String 'extract URL from hyperlink - posted by Rick Rothstein If rng(1).Hyperlinks.Count Then HLink = rng.Hyperlinks(1).Address End If End Function
In a large workbook, you can use hyperlinks as a table of contents, to quickly go to a specific sheet. Then, on each worksheet, have another hyperlink, to go back to the table of contents.
To keep things looking tidy, you can use code that hides each sheet, after you click a hyperlink on that sheet. Thanks to Jim Williams for suggesting this technique.
The following code is stored on the ThisWorkbook module, and it runs when a hyperlink is clicked on an worksheet in that workbook. You can also get this code in a sample file -- look for download #4 in the list below
Private Sub Workbook_SheetFollowHyperlink _ (ByVal Sh As Object, ByVal Target As Hyperlink) 'shows hidden target sheet and 'hides sheet where hyperlink was clicked Dim strWs As String Dim strTgt As String Dim strRng As String Dim strMsg As String Dim lCut As Long On Error GoTo errHandler strMsg = "Problem with follow hyperlink code" Select Case Sh.Name Case "Instructions", "MyLinks" GoTo exitHandler Case Else strWs = Target.Parent If ActiveSheet.Name <> strWs Then 'get the target cell/range strTgt = Target.SubAddress lCut = InStr(1, strTgt, "!") strRng = Right(strTgt, Len(strTgt) - lCut) With Sheets(strWs) strMsg = "Could not select the target" .Visible = True .Activate .Range(strRng).Activate End With End If strMsg = "Could not hide the sheet" Sh.Visible = False End Select exitHandler: Exit Sub errHandler: MsgBox strMsg Resume exitHandler End Sub
Last updated: January 13, 2024 1:21 PM