+ Reply to Thread
Results 1 to 3 of 3

Batch create hyperl formula from hyperl value

  1. #1
    Registered User
    Join Date
    02-26-2006
    Posts
    6

    Batch create hyperl formula from hyperl value

    Good day;
    Excel 2003 - Inserted-Hyperlink paths problems.
    1. Many workbooks with multi worksheets with 4,000+ 'relative' hyperlinks, created with Insert-Hyperlink... in Excel2000 and 2003. Same relative network paths problems as in so many other posts.
    .
    Need tool/macro to automate (automagically) convert/copy each of the existing Hyperlinks' VALUE (which still displays the absolute paths, thankfully)
    into a new =hyperlink() formula for each.
    .
    In most of the spreadsheet / workbooks, 99% of the old hyperlinks are in column 'U'.
    Would prefer the new =Hyperlink formula output to go in column V (same row)...just in case.
    .
    Be great to retain the same value into the new displayed text/Hyperlink as well. (While removing the old useless Hyperlink addresses)
    .
    I keep reading that the path of Hyperlink-formulas are, and do remain, absolute - which is what I need.
    .
    Looked at a few 3rd party tools, but they only do bulk change on same types (update either Values or, Formulas, but no automation of the conversion needed).
    .
    2. From now on, for new Inserted-Hyperlinks, how could sense the new added hyperlinks only - so a macro triggered by ChangeWorkSheet , or CloseWorkbook(!) automatically update only those new inserted-hyperlinks to =Hyperlink formulas ? (So it's faster than checking ALL the many worksheets' cells every time...) This way, can continue inserting hyperlinks the easy way... and the macro would correct them rapidly.
    .
    Sorry if long-winded - kind of urgent, so hope you have all needed details in the above.
    Thank you.

  2. #2
    Dave Peterson
    Guest

    Re: Batch create hyperl formula from hyperl value

    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)

    Then if you get the answer you expected, you could change the formula to:

    =hyperlink(geturl(a1))
    or maybe...
    =if(geturl(a1)="","",hyperlink(geturl(a1))



    Electro911 wrote:
    >
    > Good day;
    > Excel 2003 - Inserted-Hyperlink paths problems.
    > 1. Many workbooks with multi worksheets with 4,000+ 'relative'
    > hyperlinks, created with Insert-Hyperlink... in Excel2000 and 2003.
    > Same relative network paths problems as in so many other posts.


    --

    Dave Peterson

  3. #3
    Registered User
    Join Date
    02-26-2006
    Posts
    6

    Thank you Dave.

    Appreciate the quick course, exactly what the doctor ordered to start me on the right foot. Eager to see how much tweaking it will take - French OS + Frencjh Office. =Hyperlink is actually '=Lien_Hypertexte' etc...
    I'll combine your snippet with others in http://www.mvps.org/dmcritchie/excel/buildtoc.htm etc..., and see if I can automate the whole thing... Probably will post the code when done, if that doesn't step on anyone's toes.
    Thanks again.

+ Reply to Thread

Thread Information

Users Browsing this Thread

There are currently 1 users browsing this thread. (0 members and 1 guests)

Bookmarks

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts

Search Engine Friendly URLs by vBSEO 3.6.0 RC 1