Got a version of Excel that uses the menu interface (Excel 97, Excel 2000, Excel 2002, or Excel 2003)? This site is for you! If you use a later version of Excel, visit our ExcelTips site focusing on the ribbon interface.
With more than 50 non-fiction books and numerous magazine articles to his credit, Allen Wyatt is an internationally recognized author. He is president of Sharon Parq Associates, a computer and publishing services company.
Learn more about Allen...
Please Note: This article is written for users of the following Microsoft Excel versions: 97, 2000, 2002, and 2003. If you are using a later version (Excel 2007 or later), this tip may not work for you. For a version of this tip written specifically for later versions of Excel, click here: Converting to Hyperlinks in a Shared Workbook.
Eric has a shared workbook that contains a database of some 3,500 records. Two of the cells in each record contain an e-mail address and a URL. When a new record is added to the database, the e-mail address and URL appear as regular text instead of as hyperlinks. To make them into hyperlinks Eric must unshare the workbook, make the change, and then reshare the workbook. Eric wondered if there is, perhaps, an easier way to handle this situation.
Quite simply, adding and editing hyperlinks is not allowed when using a shared workbook. The simplest way around it is to put the links in separate cells as text and then use the HYPERLINK formula to reference those cells.
For example, if the URL is entered into cell E2, you could use the following formula in a different cell:
The first argument in this formula is to the cell that contains the address and the second argument is for the text to be displayed for the hyperlink. This approach requires two additional columns (for the HYPERLINK formulas) but will not require unsharing and resharing the workbook.
The only other option is to create a macro that can automate the process of unsharing and resharing the workbook. The following macro will do this and convert whatever is in the selected cell into a hyperlink.
Sub AddHyperlink() Dim cell As Range Application.DisplayAlerts = False ' Unshare the Workbook If ActiveWorkbook.MultiUserEditing Then ActiveWorkbook.ExclusiveAccess End If ' Change address in cell to a hyperlink. If ActiveCell = "" Then ActiveCell.Hyperlinks.Delete Else For Each cell In Intersect(Selection, _ Selection.SpecialCells(xlConstants, xlTextValues)) With Worksheets(1) .Hyperlinks.Add Anchor:=cell, _ Address:=cell.Value, _ ScreenTip:=cell.Value, _ TextToDisplay:=cell.Value End With Next cell End If ' Reshare the Workbook If Not ActiveWorkbook.MultiUserEditing Then ActiveWorkbook.SaveAs _ Filename:=ActiveWorkbook.FullName, _ AccessMode:=xlShared End If End Sub
ExcelTips is your source for cost-effective Microsoft Excel training. This tip (3155) applies to Microsoft Excel 97, 2000, 2002, and 2003. You can find a version of this tip for the ribbon interface of Excel (Excel 2007 and later) here: Converting to Hyperlinks in a Shared Workbook.
Create Custom Apps with VBA! Discover how to extend the capabilities of Office 2013 (Word, Excel, PowerPoint, Outlook, and Access) with VBA programming, using it for writing macros, automating Office applications, and creating custom applications. Check out Mastering VBA for Office 2013 today!