XL97: No Menu Choice to Select All Hyperlinks

ID: Q156353

The information in this article applies to:

SYMPTOMS

Microsoft Excel 97 has no menu option that enables you to select all hyperlinks within a worksheet.

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 the Microsoft fee-based consulting line at (800) 936-5200. For more information about the support options available from Microsoft, please see the following page on the World Wide Web:

   http://www.microsoft.com/support/supportnet/refguide/

It is possible to 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 could delete all of the hyperlinks, or you could simply report the location of each hyperlink.

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, click Module on the Insert menu.

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

      '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

5. On the File menu, click "Close and Return to Microsoft Excel."

If you insert some hyperlinks into your worksheet, you can try running the different macros by pointing to Macro on the Tools menu and clicking Macros. Then, select the name of the macro to run, and click Run.

MORE INFORMATION

The Go To Special dialog box in Microsoft Excel enables you to select cells or objects in a worksheet in several different combinations. For example, you can select all objects in a worksheet, or select all cells that contain conditional formats or comments.

To use the Go To Special dialog box, follow these steps:

1. On the Edit menu, click Go To.

2. Click Special.

But, the Go To Special dialog box does not offer the choice of selecting all cells that contain hyperlinks. Because of this, you may encounter some difficulty when working with large numbers of hyperlinks; for example, if you want to delete all hyperlinks from your worksheet, there is no way to do this without using a macro.

REFERENCES

For more information about hyperlinks, click Contents And Index on the Help menu, click the Index tab in Microsoft Excel Help, type the following text

   hyperlinks, creating

and then double-click the selected text to go to the "Create a hyperlink" topic. If you are unable to find the information you need, ask the Office Assistant.

Additional query words: link URL "select.special" specialcells routine subroutine

Keywords          : kbualink97 kbdta kbdtacode xlui KbVBA xlweb 
Version           : WINDOWS:97
Platform          : WINDOWS
Issue type        : kbprb

Last Reviewed: May 18, 1999