Seite 1 von 1
Hintergrundfarbe von Links
Verfasst: Fr, 27.05.2016 13:27
von piet67
Möchte gerade in Calc Version 4.1.2 die Hintergrundfarbe von Hyperlinks entfernen, bisher sind sie immer "grau" hinterlegt.Leider ist mir das bis Dato leider nicht gelungen!

Egal was man unter "Extras", "Einstellungen", "OpenOffice", "Dartellung", "Feldhinterlegung" vornimmt, die Hintergrundfarbe bleibt erhalten, selbst wenn man das Häkchen heraus nimmt. Es handelt sich um ca. 800 Links die ich in eine Calc Tabelle einfügen möchte. Es wäre eine riesige Arbeit dies über die Funktion "Hyperlink ()" zu verwirklichen. Gibt es hierfür eine Lösung? Oder sogar einen anderen "einfacheren" Weg auf ein Textdokument zu verlinken? Wäre für eine Hilfestellung sehr dankbar.

Re: Hintergrundfarbe von Links
Verfasst: Fr, 27.05.2016 13:35
von Stephan
Egal was man unter "Extras", "Einstellungen", "OpenOffice", "Dartellung", "Feldhinterlegung" vornimmt, die Hintergrundfarbe bleibt erhalten, selbst wenn man das Häkchen heraus nimmt.
Und eine weiße Hintergrundfarbe stört auch? (Hinweis: die EXPLIZITE Einstellung auf weiße Farbe bewirkt etwas Anderes als das Entfernen des benannten Häkchens)
Gruß
Stephan
Re: Hintergrundfarbe von Links
Verfasst: Fr, 27.05.2016 19:40
von piet67
Hallo Stephan,
so einfach ist es leider nicht. Die Zellen haben alle eine spezielle Hintergrundfarbe und noch weitere Kriterien, nach denen sie sortiert werden können. Es macht sich ganz und gar nicht gut, wenn nun hinter einem Text mit einem roten Hintergrund zusätzlich noch ein Hintergrund für den Link in Weiß erscheinen würde.
Re: Hintergrundfarbe von Links
Verfasst: Fr, 27.05.2016 22:45
von Stephan
so einfach ist es leider nicht. Die Zellen haben alle eine spezielle Hintergrundfarbe und noch weitere Kriterien, nach denen sie sortiert werden können. Es macht sich ganz und gar nicht gut, wenn nun hinter einem Text mit einem roten Hintergrund zusätzlich noch ein Hintergrund für den Link in Weiß erscheinen würde.
Dann wirst Du wohl alle Links in die Funtion HYPERLINK() konvertieren müssen.
Markiere dazu alle Zellen die Links enthalten und starte das Makro "Sub hyperlinks_umwandeln()":
Code: Alles auswählen
Sub hyperlinks_umwandeln()
selektion = ThisComponent.getCurrentSelection()
if selektion.supportsService("com.sun.star.sheet.SheetCellRange") then
zellBereichAddresse = selektion.getRangeAddress()
neu_link(zellBereichAddresse)
Elseif selektion.supportsService("com.sun.star.sheet.SheetCellRanges") then
for i = 0 To selektion.getCount()-1
zellBereichAddresse = selektion.getByIndex(i).getRangeAddress()
neu_link(zellBereichAddresse)
Next i
End If
End Sub
Sub neu_link(akt_range_addr)
On Error Resume Next 'falls Zellen ohne Hyperlink markiert
sc = akt_range_addr.StartColumn
sr = akt_range_addr.StartRow
ec = akt_range_addr.EndColumn
er = akt_range_addr.EndRow
for j = sc to ec
for k = sr to er
akt_zelle = ThisComponent.CurrentController.ActiveSheet.getCellByPosition(j,k)
txt_field = akt_zelle.getText().getTextFields(0).getByIndex(0)
l_url = txt_field.URL
l_txt = txt_field.Representation
If LEN(l_url) > 0 AND LEN(l_txt)> 0 Then
akt_zelle.Formula = "=HYPERLINK(""" & l_url & """;""" & l_txt & """)"
l_url = ""
l_txt = ""
End If
Next k
Next j
End Sub
Gruß
Stephan