Marcin C.

Marcin C. Specjalista ds.
sprzedaży

Temat: Zamiana przyjaznego linka na adres www

Arkusz ma kilka tysięcy wierszy. W każdym jest przyjazny link. Oczywiście po jego wciśnięciu przekierowuje mnie na właściwą stronę internetową. Chcę pracować nad tymi linkami i dlatego potrzebuję, żeby przyjazne linki zamienić na pełny adres www.
Bardzo proszę o pomoc
Oskar Shon

Oskar Shon Dodatki do Office
www.VBATools.pl

Temat: Zamiana przyjaznego linka na adres www

Chcesz treść hiperłącza typu <kliknij> zmienić na wpis jawny typu: www.strona_internetowa.pl
Czy tak?
Andy L.

Andy L. ITM, VUB

Temat: Zamiana przyjaznego linka na adres www

Nie raczyłeś napisać której wersji Excela używasz.
Dla Ex2013 i wyższej istnieje funkcja FORMULATEXT()
zakładając, że twoje źródlo jest w kolumnie A możesz spróbować:
=MID(FORMULATEXT(A1),SEARCH("(",FORMULATEXT(A1))+2,SEARCH(",",FORMULATEXT(A1))-SEARCH("(",FORMULATEXT(A1))-3)

Jeśli chcesz "wyciągnąć" friendly_name to
=MID(FORMULATEXT(A1),SEARCH(",",FORMULATEXT(A1))+2,SEARCH(")",FORMULATEXT(A1))-SEARCH(",",FORMULATEXT(A1))-3)


nazwy funkcji przetłumacz sobie na polskie i użyj średnika zamiast przecinka (dla polskiej wersji Excela)

pewnie będzie coś w tym stylu:
=FRAGMENT.TEKSTU(FORMUŁA.TEKST(A1);SZUKAJ.TEKST("(";FORMUŁA.TEKST(A1))+2;SZUKAJ.TEKST(",";FORMUŁA.TEKST(A1))-SZUKAJ.TEKST("(";FORMUŁA.TEKST(A1))-3)
=FRAGMENT.TEKSTU(FORMUŁA.TEKST(A1);SZUKAJ.TEKST(",";FORMUŁA.TEKST(A1))+2;SZUKAJ.TEKST(")";FORMUŁA.TEKST(A1))-SZUKAJ.TEKST(",";FORMUŁA.TEKST(A1))-3)


dla wersji niższych trzeba użyć funkcji UDF (VBA) (google twoim przyjacielem jest), która robi dokładnie to samo co FORMULATEXT.Ten post został edytowany przez Autora dnia 07.06.17 o godzinie 21:46
Marcin C.

Marcin C. Specjalista ds.
sprzedaży

Temat: Zamiana przyjaznego linka na adres www

Dokładnie o to mi chodzi.
Mam wersję Excela 2010.
Oskar S.:
Chcesz treść hiperłącza typu <kliknij> zmienić na wpis jawny typu: www.strona_internetowa.pl
Czy tak?
Oskar Shon

Oskar Shon Dodatki do Office
www.VBATools.pl

Temat: Zamiana przyjaznego linka na adres www

Dodaj taki kod do modułu:

Public Function HyperLinkText(rg As Range)
'MVP Oskar Shon dodatki do office www.VBATools.pl
Dim sFormula As String, s As String
Dim L As Long
Dim H As Hyperlink, HS As Hyperlinks

sFormula = rg.Formula
L = InStr(1, sFormula, "HYPERLINK(""", vbBinaryCompare)

If L > 0 Then
s = Mid(sFormula, L + 11)
s = Left(s, InStr(s, """") - 1)
Else
Set HS = rg.Worksheet.Hyperlinks
For Each H In HS
If H.Range = rg Then
s = H.Address
End If
Next H
End If
HyperLinkText = s
End Function

Wywołaj funkcję UDF powołując się na komórkę z linkiem
=HyperLinkText(B2)
Marcin C.

Marcin C. Specjalista ds.
sprzedaży

Temat: Zamiana przyjaznego linka na adres www

Bardzo dziękuję.
Przepięknie działa
Oskar S.:
Dodaj taki kod do modułu:

Public Function HyperLinkText(rg As Range)
'MVP Oskar Shon dodatki do office www.VBATools.pl
Dim sFormula As String, s As String
Dim L As Long
Dim H As Hyperlink, HS As Hyperlinks

sFormula = rg.Formula
L = InStr(1, sFormula, "HYPERLINK(""", vbBinaryCompare)

If L > 0 Then
s = Mid(sFormula, L + 11)
s = Left(s, InStr(s, """") - 1)
Else
Set HS = rg.Worksheet.Hyperlinks
For Each H In HS
If H.Range = rg Then
s = H.Address
End If
Next H
End If
HyperLinkText = s
End Function

Wywołaj funkcję UDF powołując się na komórkę z linkiem
=HyperLinkText(B2)

Następna dyskusja:

[excelo pogotowie] zamiana ...




Wyślij zaproszenie do