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: Extracting URLs from Hyperlinked Images.
One way you can use data from the Internet in an Excel worksheet is to copy it from a Web page and then paste it into the worksheet. For instance, you can select a table of data on a Web page, press Ctrl+C to copy it to the Clipboard, select a cell in Excel, and then press Ctrl+V. Excel does its best to parse the data and put it in the proper cells, just like it was in the original table.
The problem is that you'll often get more than just the table data. If there were other objects in the data you copied from the Web, those objects are also pasted into the worksheet. It is not uncommon to end up with all sorts of small graphics in the worksheet. If these graphics were originally hyperlinks, you may want to actually extract the hyperlink and then delete the graphic. This would make the data in the worksheet much more usable.
The way to do this is with a macro. Once you've pasted the Web information into the worksheet, run the following macro.
Sub ConvertHLShapes() Dim shp As Shape Dim sTemp As String For Each shp In ActiveSheet.Shapes sTemp = "" On Error Resume Next 'go to next shape if no hyperlink sTemp = shp.Hyperlink.Address On Error GoTo 0 If sTemp <> "" Then shp.TopLeftCell.Value = sTemp shp.Delete End If Next End Sub
This macro steps through each of the shapes in the worksheet. It then checks to see if the shape has an associated hyperlink. If it does, then the address of that hyperlink (in the sTemp variable) is placed into the cell at the top-left corner of where the shape is located. The macro deletes any shapes that have hyperlinks; you can force it to delete all shapes in the worksheet by simply moving the shp.Delete line to the outside of the If ... End If structure.
ExcelTips is your source for cost-effective Microsoft Excel training. This tip (2907) 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: Extracting URLs from Hyperlinked Images.
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!