Notice: This website is an unofficial Microsoft Knowledge Base (hereinafter KB) archive and is intended to provide a reliable access to deleted content from Microsoft KB. All KB articles are owned by Microsoft Corporation. Read full disclaimer for more details.

XL2000: No Menu Command to Select All Hyperlinks Within a Worksheet


View products that this article applies to.

This article was previously published under Q213790

↑ Back to the top


Symptoms

Microsoft Excel 2000 has no menu command that lets you select all hyperlinks within a worksheet.

↑ Back to the top


Workaround

Microsoft provides programming examples for illustration only, without warranty either expressed or implied, including, but not limited to, the implied warranties of merchantability and/or fitness for a particular purpose. This article assumes that you are familiar with the programming language being demonstrated and the tools used to create and debug procedures. Microsoft support professionals can help explain the functionality of a particular procedure, but they will not modify these examples to provide added functionality or construct procedures to meet your specific needs.
If you have limited programming experience, you may want to contact a Microsoft Certified Partner or Microsoft Advisory Services. For more information, visit these Microsoft Web sites:

Microsoft Certified Partners - https://partner.microsoft.com/global/30000104

Microsoft Advisory Services - http://support.microsoft.com/gp/advisoryservice

For more information about the support options that are available and about how to contact Microsoft, visit the following Microsoft Web site:http://support.microsoft.com/default.aspx?scid=fh;EN-US;CNTACTMS To work around this behavior, use a macro to select all the cells that contain hyperlinks.
  1. Create a new workbook in Microsoft Excel.
  2. On the Tools menu, point to Macro, and then click Visual Basic Editor.
  3. In the Visual Basic Editor, on the Insert menu, click Module.
  4. Type the following code into the module:
    'This Sub procedure selects all cells in the worksheet that contain
    'hyperlinks. You can then clear the selected cells to delete all of
    'the hyperlinks.
    Sub SelectAllHyperlinkCells()
        FirstCell = 1
        For Each xLink In ActiveSheet.Hyperlinks
            If FirstCell = 1 Then
                Set xRange = xLink.Range
                FirstCell = 0
            Else
                Set xRange = Application.Union(xRange, xLink.Range)
            End If
        Next xLink
        xRange.Select
    End Sub
    					

↑ Back to the top


More information

Other Macros to Work with Hyperlinks

You can use a Microsoft Visual Basic for Applications subroutine to cycle through all of the hyperlinks within a worksheet and perform a specific operation on each hyperlink. For example, you can delete all of the hyperlinks, or you can simply report the location of each hyperlink.

NOTE: Some lines of code have been modified with line continuation characters (_) to fit this document.
  1. Create a new workbook in Microsoft Excel.
  2. On the Tools menu, point to Macro, and then click Visual Basic Editor.
  3. In the Visual Basic Editor, on the Insert menu, click Module.
  4. Type the following code into the module:
    'This Sub procedure deletes all hyperlinks in the active worksheet.
    
    Sub DeleteAllHyperlinks()
        For Each xLink In ActiveSheet.Hyperlinks
            xLink.Delete
        Next xLink
    End Sub
    
    'This Sub procedure displays a series of message boxes indicating
    'the location of each hyperlink in the active worksheet.
    Sub ReportHyperlinkLocations()
       For Each xLink In ActiveSheet.Hyperlinks
            MsgBox xLink.Range.Address
        Next xLink
    End Sub
    
    'This Sub procedure identifies each hyperlink and asks if you want
    'to delete it. If you click Yes, the hyperlink is deleted.
    Sub ReportAndDeleteHyperlinks()
        For Each xLink In ActiveSheet.Hyperlinks
            Response = MsgBox("Delete hyperlink in cell " & _
                xLink.Range.Address & " ?", vbYesNo)
            If Response = vbYes Then xLink.Delete
        Next xLink
    End Sub
    					
  5. On the File menu, click Close and Return to Microsoft Excel.
If you insert some hyperlinks into your worksheet, you can run the different macros by pointing to Macro on the Tools menu and then clicking Macros. Select the name of the macro to run, and then click Run.

The DeleteAllHyperlinks() macro deletes the hyperlink property of the range, but not the hyperlink text. It leaves behind the hyperlink text.

↑ Back to the top


References

For more information about hyperlinks, in the Visual Basic Editor, click Microsoft Visual Basic Help on the Help menu, type hyperlink object in the Office Assistant or the Answer Wizard, and then click Search to view the topic.

↑ Back to the top


Keywords: KB213790, kbprb, kbdtacode

↑ Back to the top

Article Info
Article ID : 213790
Revision : 8
Created on : 11/23/2006
Published on : 11/23/2006
Exists online : False
Views : 271