Written by Allen Wyatt (last updated December 8, 2018)
This tip applies to Excel 2007, 2010, 2013, 2016, 2019, and Excel in Microsoft 365
John has a workbook that has well over a thousand URLs in it, all in column A. These are not hyperlinks; they are straight text of individual URLs. John wants to convert the URLs to active hyperlinks, but doing the conversion individually is extremely tedious, especially for that many URLs.
One way to do the conversion is to use the HYPERLINK function. Put this formula in cell B1 and copy it down as many cells as necessary:
=IF(A1="","",HYPERLINK(IF(LEFT(A1,7)="http://","","http://")&A1))
The result is that column B will contain hyperlinks for everything in column A. The formula isn't terribly robust, as it only deals with the presence or lack of the text "http://", and you may need it to also deal with "https" addresses. It is possible to adjust the formula (i.e., making it more complex), but you may also want to consider using a macro to do the conversions.
To be effective, the macro would need to step through each cell in a selected range and, if the cell is not blank, convert the contents to a hyperlink. The following will do the trick:
Sub URL_List() Dim sTemp As String Dim sURL As String Dim cell As Range For Each cell In Selection If cell.Value <> "" Then sTemp = Left(cell.Value, 7) If sTemp = "http://" Or sTemp = "https:/" Then sURL = cell.Value Else sURL = "http://" + cell.Value End If ActiveSheet.Hyperlinks.Add Anchor:=cell, _ Address:=sURL, TextToDisplay:=cell.Value End If Next cell End Sub
The macro is not foolproof; it assumes that if a cell contains anything at all it is a valid URL. What it does is to check the cell contents and, if the contents aren't prefaced by the "http://" or "https:/" text, then a prefix of "http://" is added. The hyperlink is then created based on the cell contents.
Note:
ExcelTips is your source for cost-effective Microsoft Excel training. This tip (5825) applies to Microsoft Excel 2007, 2010, 2013, 2016, 2019, and Excel in Microsoft 365. You can find a version of this tip for the older menu interface of Excel here: Converting a Range of URLs to Hyperlinks.
Comprehensive VBA Guide Visual Basic for Applications (VBA) is the language used for writing macros in all Office programs. This complete guide shows both professionals and novices how to master VBA in order to customize the entire Office suite for their needs. Check out Mastering VBA for Office 2010 today!
If you want people to know something about a hyperlink you added to your worksheet, one way to help them is to use ...
Discover MoreExcel allows you to easily add hyperlinks to a worksheet. Click on it, and the target of the link is opened in a browser ...
Discover MoreDo you use special characters (such as the pound sign) in your worksheet names? If so, you could run into problems ...
Discover MoreFREE SERVICE: Get tips like this every week in ExcelTips, a free productivity newsletter. Enter your address and click "Subscribe."
2018-12-09 09:47:35
Allen
I mentioned using the HYPERLINK function approach at the beginning of the tip, Gayle.
-Allen
2018-12-08 19:52:44
Gayle
Thanks Allen...Is there a reason why you wouldn't use =HYPERLINK(A1) and fill down the column (as long as the URL doesn't exceed 255 characters)?
Gayle
Got a version of Excel that uses the ribbon interface (Excel 2007 or later)? This site is for you! If you use an earlier version of Excel, visit our ExcelTips site focusing on the menu interface.
FREE SERVICE: Get tips like this every week in ExcelTips, a free productivity newsletter. Enter your address and click "Subscribe."
Copyright © 2023 Sharon Parq Associates, Inc.
Comments