Need macro help to edit hyperlinks

T

Tomj

Please help. I have a workbook with columns of email hyperlinks that
imported from another program.

When I run following macro: My cells show what is in the "Text t
display field". I need to see the email address.

I have spent many hours searching the web for a macro to do this but
cannot find one. And I do not know how to do it my self.

Thanks,

Sub RemoveHyperlinks()

'Remove all hyperlinks from the active sheet
ActiveSheet.Hyperlinks.Delete

End Su
 
D

Dave Peterson

You can use a User defined function to retrieve the link.

Option Explicit
Function GetURL(Rng As Range) As String
Application.Volatile

Set Rng = Rng(1)

If Rng.Hyperlinks.Count = 0 Then
GetURL = ""
Else
GetURL = Rng.Hyperlinks(1).Address
End If
End Function

So if you had a hyperlink in A1, you could put =getURL(a1) in that adjacent
cell.

Be aware that if you change the hyperlink, then this formula cell won't change
until your workbook calculates.

If you're new to macros, you may want to read David McRitchie's intro at:
http://www.mvps.org/dmcritchie/excel/getstarted.htm

Short course:

Open your workbook.
Hit alt-f11 to get to the VBE (where macros/UDF's live)
hit ctrl-R to view the project explorer
Find your workbook.
should look like: VBAProject (yourfilename.xls)

right click on the project name
Insert, then Module
You should see the code window pop up on the right hand side

Paste the code in there.

Now go back to excel.
Into a test cell and type:
=getURL(a1)
 
L

Leith Ross

Hello Tomj,

Place this code in a VBA module and you can then call it from code o
from the Macros list (ALT + F8). This will change the hyperlink to sho
the web address. The link will remain intact so you can click and go t
the site.


Code
-------------------
Sub ShowWebAddresses()

Dim HypLnk

For Each HypLnk In ActiveSheet.Hyperlinks
HypLnk.TextToDisplay = HypLnk.Address
Next HypLnk

End Sub
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Top