Sprungziel aus Hyperlink extrahieren

Antwort erstellen


BBCode ist eingeschaltet
[img] ist ausgeschaltet
[url] ist eingeschaltet
Smileys sind ausgeschaltet

Die letzten Beiträge des Themas
   

Ansicht erweitern Die letzten Beiträge des Themas: Sprungziel aus Hyperlink extrahieren

Re: Sprungziel aus Hyperlink extrahieren

von Rakuda » Sa, 30.08.2014 19:05

Stephan hat geschrieben: =hl(ZELLE("ADRESSE"; A1))
... Danke für den Hinweis, damit kann man auch die Formel in andere Zellen übertragen - praktisch !

Gruss,
Rakuda

Re: Sprungziel aus Hyperlink extrahieren

von Stephan » Sa, 30.08.2014 18:15

Mit Anführungszeichen funktioniert's prima !
Die Anführungszeichen sind keine Nachläsigkeit von mir sondern eine technische Notwendigkeit weil OO nicht das Zellobjekt als Parameter akzeptiert, was bei der konkreten FRagestellung heißt Du kämst nur an den sichtbaren Text des Links.

Man könnte höchstens beispielsweise so aufrufen:

=hl(ZELLE("ADRESSE"; A1))


Gruß
Stephan

Re: Sprungziel aus Hyperlink extrahieren

von Rakuda » Sa, 30.08.2014 17:58

Hallo Stefan,

vielen Dank für die grossartige Hilfe, ohne die ich wirklich aufgeschmissen wäre !

PS
zuerst hatte ich einen Runtime Fehler bekommen - da dachte ich schon oh weh ! - nach genauem Studium deiner mail fiel mir dann auf, dass ich die Anführungszeichen vergessen hatte ! =hl("A1") :?

Mit Anführungszeichen funktioniert's prima ! :D

Also nochmals vielen Dank !!

Gruss,
Rakuda

Re: Sprungziel aus Hyperlink extrahieren

von Stephan » Sa, 30.08.2014 16:39

dafür wirst Du wohl eine benutzerdefinierte Funktion nutzen müssen, in Anlehnung an https://www.uni-due.de/~abi070/ooo.html beispielsweise:

Code: Alles auswählen

Function hl(zn As String)
	Dim oCell, oText, oParEnum, oParElement
	Dim oEnum, oElement
	oCell = ThisComponent.CurrentController.ActiveSheet.getCellRangeByName(zn)
	oParEnum = oCell.getText().createEnumeration()
	Do While oParEnum.hasMoreElements()
		oParElement = oParEnum.nextElement()
		oEnum = oParElement.createEnumeration()
		Do While oEnum.hasMoreElements()
			oElement = oEnum.nextElement()
			If oElement.TextPortionType = "TextField" Then
				If oElement.TextField.supportsService("com.sun.star.text.TextField.URL") Then
					hl = oElement.TextField.URL
				End If
			End If
		Loop
	Loop
End Function
aufgerufen wird diese dann in Zelle B1 mittels:

=hl("A1")


Gruß
Stephan

Re: Sprungziel aus Hyperlink extrahieren

von Rakuda » Sa, 30.08.2014 16:06

vielen Dank für die ersten Antworten.

Ich habe die hyperlinks mit copy-paste importiert. Nun sehe ich in der Zelle nur den Anzeigetext, und wenn ich mit der Maus drübergehe sehe ich die URL "http://www. ...". Wenn ich über eine Formel einen Bezug zur Zelle herstelle, enthält dieser immer nur den Anzeigetext. d.h. =TEIL(FORMEL(A1);13;FINDEN(""";""";FORMEL(A1))-13) oder FORMEL(A1) etc. liefert ein "#NV".

:(

Gruss,
Rakuda

Re: Sprungziel aus Hyperlink extrahieren

von Karolus » Sa, 30.08.2014 12:37

Hallo

Steht in A1 eine =HYPERLINK("...";"...") -formel oder ein Link per →Einfügen→Hyperlink

Im ersten Fall wäre es relativ einfach:

Code: Alles auswählen

=TEIL(FORMEL(A1);13;FINDEN(""";""";FORMEL(A1))-13)

Sprungziel aus Hyperlink extrahieren

von Rakuda » Sa, 30.08.2014 12:12

Hallo zusammen,

ich versuche aus einem Hyperlink das Sprungziel zu extrahieren.
Ich habe in Zelle A1 einen Hyperlink, nun möchte ich in Zelle B1 die URL des Hyperlinks als Text darstellen.

Ich suche eine Funktion ähnlich der Funktion ZELLE, doch diese stellt leider nicht den notwendigen "InfoTyp" bereit.

Danke schon im Voraus für Deine Hilfe !

Gruss,
Rakuda

Nach oben