Date: prev next · Thread: first prev next last
2018 Archives by date, by thread · List index


Hallo Günther,

in seiner ersten Mail hat Andreas dargelegt, welche Modifikation er haben möchte:

"[...] Ich strebe eine dezentere Darstellung an: Standardschriftfarbe Schwarz, dünner Unterstrich gepunktet, keine Hintergrundfarbe. [...]"

Mit Deinem Vorschlag ( SUCHEN: http.+ / ERSETZEN: =hyperlink("$0") ) habe ich das Ganze mal manuell durchgeführt (inklusive gepunktetem Unterstrich) und das Makro aufgezeichnet (s.u.). Wenn man das aufgezeichnete Makro ausführt, ist das Ergebnis im Wesentlichen das, was Andreas (s.o.) kommuniziert hatte.

Allerdings würde ich empfehlen immer Web-Links mit vorangestelltem "http" zu verwenden, da es eben auch Web-Links ohne vorangestelltes "www" gibt wie beispielsweise "bugfoundation.com" ( https://bugfoundation.com/home.html ). Das vorangestellte "www" ist nicht zwingend vorgeschrieben.

Warum Andreas jetzt schreibt "[...] Ohne farbige Kennzeichnung ist die Methode nicht verwendbar. Und farbige Kennzeichnung von Teilen eines Zellinhaltes ist in Calc
nicht vorgesehen. [...]" kann ich auch nicht nachvollziehen.

Bezüglich "[...] farbige Kennzeichnung von Teilen eines Zellinhaltes [...]" muss man (bezüglich CALC) aufpassen, dass man nicht "aneinander vorbei redet":

[1] einzelne Zeichen einfärben
Das geht nur, wenn in der Zelle eben auch ein Text steht. In der Zelle steht aber (eine Formel) "=HYPERLINK("https://www.google.de/";)" und angezeigt wird (ein Text) "https://www.google.de/";. Ich habe es nicht hinbekommen bei dieser Situation einzelne Zeichen des angezeigten Textes anders einzufärben.

[2] einzelne Zeichen mit anderer Hintergrundfarbe (in WRITER: "Farbe für Hervorhebungen") Eine Entsprechung in CALC habe ich nicht gefunden, lasse mich aber gern eines Besseren belehren. Hier kann man nur die Hintergrundfarbe der gesamten Zelle modifizieren.

[3] Hintergrundfarbe der Zelle
Unabhängig vom in der Zelle enthaltenen Text wird der Zellhintergrund entsprechend eingefärbt. Aber das ist optisch etwas anderes als [2].

Gruß
Hans-Werner :-))


sub WebLinkMod
rem ----------------------------------------------------------------------
rem define variables
dim document   as object
dim dispatcher as object
rem ----------------------------------------------------------------------
rem get access to the document
document   = ThisComponent.CurrentController.Frame
dispatcher = createUnoService("com.sun.star.frame.DispatchHelper")
rem ----------------------------------------------------------------------
dim args1(20) as new com.sun.star.beans.PropertyValue
args1(0).Name = "SearchItem.StyleFamily"
args1(0).Value = 2
args1(1).Name = "SearchItem.CellType"
args1(1).Value = 0
args1(2).Name = "SearchItem.RowDirection"
args1(2).Value = true
args1(3).Name = "SearchItem.AllTables"
args1(3).Value = false
args1(4).Name = "SearchItem.SearchFiltered"
args1(4).Value = false
args1(5).Name = "SearchItem.Backward"
args1(5).Value = false
args1(6).Name = "SearchItem.Pattern"
args1(6).Value = false
args1(7).Name = "SearchItem.Content"
args1(7).Value = false
args1(8).Name = "SearchItem.AsianOptions"
args1(8).Value = false
args1(9).Name = "SearchItem.AlgorithmType"
args1(9).Value = 1
args1(10).Name = "SearchItem.SearchFlags"
args1(10).Value = 65536
args1(11).Name = "SearchItem.SearchString"
args1(11).Value = "http.+"
args1(12).Name = "SearchItem.ReplaceString"
args1(12).Value = "=hyperlink("+CHR$(34)+"$0"+CHR$(34)+")"
args1(13).Name = "SearchItem.Locale"
args1(13).Value = 255
args1(14).Name = "SearchItem.ChangedChars"
args1(14).Value = 2
args1(15).Name = "SearchItem.DeletedChars"
args1(15).Value = 2
args1(16).Name = "SearchItem.InsertedChars"
args1(16).Value = 2
args1(17).Name = "SearchItem.TransliterateFlags"
args1(17).Value = 1073743104
args1(18).Name = "SearchItem.Command"
args1(18).Value = 3
args1(19).Name = "SearchItem.SearchFormatted"
args1(19).Value = false
args1(20).Name = "SearchItem.AlgorithmType2"
args1(20).Value = 2
dispatcher.executeDispatch(document, ".uno:ExecuteSearch", "", 0, args1()) rem ----------------------------------------------------------------------
dim args2(0) as new com.sun.star.beans.PropertyValue
args2(0).Name = "Visible"
args2(0).Value = false
dispatcher.executeDispatch(document, ".uno:SearchResultsDialog", "", 0, args2()) rem ----------------------------------------------------------------------
dim args3(2) as new com.sun.star.beans.PropertyValue
args3(0).Name = "Underline.LineStyle"
args3(0).Value = 3
args3(1).Name = "Underline.HasColor"
args3(1).Value = false
args3(2).Name = "Underline.Color"
args3(2).Value = -1
dispatcher.executeDispatch(document, ".uno:Underline", "", 0, args3())
end sub



------ Originalnachricht ------
Von: "Günther Breitfuß" <guenther.breitfuss@dellacher.eu>
An: users@de.libreoffice.org
Gesendet: 14.12.2018 22:03:28
Betreff: Re: [de-users] Re: Calc: Veraendern der Darstellung von Verknuepfungen


Am 14.12.2018 um 20:16 schrieb Andreas Borutta:
 HansWernerHerold schrieb:

 > Aber der Vorschlag von Günther funktioniert prima:
 >
 > SUCHEN:   https*://.+
 > ERSETZEN:   =hyperlink("$0")
 >
 > Dabei aber nicht vergessen, bei "Reguläre Ausdrücke" das "Häkchen" zu
 > setzen !!!

 Ohne farbige Kennzeichnung ist die Methode nicht verwendbar.
 Und farbige Kennzeichnung von Teilen eines Zellinhaltes ist in Calc
 nicht vorgesehen.
Verstehe ich nicht. Man kann mitten in einem roten Wort einen Buchstaben
grün machen.

 Es ist vertrackt.
 Die Suche müsste übrigens, wenn es doch eine Lösung werden sollte, in
 ein Ereignismakro gepackt werden.
 Aber auch das scheidet aus, weil Links dann nicht mehr als Teil von
 Zellinhalten existieren dürfen.
Verstehe ich nicht. Warum vertragen sich Makros mit Links nicht?
 Es scheint sich um eine unlösbare Aufgabe zu handeln.

 Andreas


Hmm, ... scheint, dass mir nicht mehr ganz klar ist, was gewollt war. ;-)

Mit der Funktion HYPERLINK() ist die Zelle wie alle anderen Zellen
formatierbar und ihr kann eine beliebige Formatvorlage zugewiesen
werden. Ich dachte, das war das Anliegen.
Ich habe mich noch ein wenig gespielt. Es geht einfacher - natürlich
immer als regulärer Ausdrücke. Falls der Text mit "http" beginnt, lautet
die Suchen/Ersetzen-Funktion

    SUCHEN: http.+
    ERSETZEN: =hyperlink("$0")

Falls der Text als unvollständiger Link mit "www" beginnt, funktioniert
es so:

    SUCHEN: www*.+
    ERSETZEN: =hyperlink("http://$0";)

Die Zuweisung der gewünschten Formatvorlage könnte man mit einer
bedingten Formatierung für alle Zellen der Tabelle in einem Rutsch
durchführen.
Das sollte sich zusammen auch als Makro machen lassen, vermute ich mal.
Aber das zahlt sich wohl nicht aus.

LG Günther



--
Liste abmelden mit E-Mail an: users+unsubscribe@de.libreoffice.org
Probleme? https://de.libreoffice.org/hilfe-kontakt/mailing-listen/abmeldung-liste/
Tipps zu Listenmails: https://wiki.documentfoundation.org/Netiquette/de
Listenarchiv: https://listarchives.libreoffice.org/de/users/
Datenschutzerklärung: https://www.documentfoundation.org/privacy

--
Liste abmelden mit E-Mail an: users+unsubscribe@de.libreoffice.org
Probleme? https://de.libreoffice.org/hilfe-kontakt/mailing-listen/abmeldung-liste/
Tipps zu Listenmails: https://wiki.documentfoundation.org/Netiquette/de
Listenarchiv: https://listarchives.libreoffice.org/de/users/
Datenschutzerklärung: https://www.documentfoundation.org/privacy

Context


Privacy Policy | Impressum (Legal Info) | Copyright information: Unless otherwise specified, all text and images on this website are licensed under the Creative Commons Attribution-Share Alike 3.0 License. This does not include the source code of LibreOffice, which is licensed under the Mozilla Public License (MPLv2). "LibreOffice" and "The Document Foundation" are registered trademarks of their corresponding registered owners or are in actual use as trademarks in one or more countries. Their respective logos and icons are also subject to international copyright laws. Use thereof is explained in our trademark policy.