Seite 1 von 1

Probleme beim Ausführen eines Makro/ Tabelle einfärben

Verfasst: Di, 17.06.2008 16:21
von td22
Hallo,

woran kann es liegen, dass beim Ausführen eines Makros (Writer) einfach nichts passiert? Anfänglich bekam ich die Fehlermeldung, dass das Makro aus Sicherheitsgründen nicht ausgeführt werden kann. Nach Ändern der Sicherheitseinstellungen passiert wie gesagt nichts.

Es handelt sich dabei um folgendes Makro, das Tabellenzeilen abwechselnd farbig machen soll:
http://www.re-solutions.de/ooo/makros/index.html Makro: colorTable

Gerade habe ich gesehen, dass das Makro von 2004 stammt, vielleicht wird es von der aktuellen OpenOffice Version nicht mehr unterstützt. Hat jemand ein anderes Makro zum Einfärben von Tabellen?

Vielen Dank für eure Hilfe
Andreas

Tabelle einfärben mit Shortcuts

Verfasst: Di, 17.06.2008 16:37
von td22
Falls niemand da ist, der sich mit Makros auskennt ... gibt es ein etwas weniger aufwändiges Verfahren, bei einer Tabelle mit ca. 100 Zeilen jede zweite grau zu färben? Shortcuts? Irgendeine Alternative, damit nur 1 Klick zur Wahl der Hintergrundfarbe nötig ist? Irgendeine Möglichkeit, mehrere nicht angrenzende Zeilen gleichzeitig zu markieren? Ansonsten ist die Arbeit ganz schön zum Haare ausraufen :cry:

Re: Probleme beim Ausführen eines Makro/ Tabelle einfärben

Verfasst: Di, 17.06.2008 16:38
von komma4
Hallo Andreas,


das Makro funktioniert auch mit neueren Versionen von OOo.

Hast Du es in Deiner Standardbibilothek "Meine Makros& Dialoge" installiert?

Und rufst dann die Routine colorAllTables auf?

Re: Probleme beim Ausführen eines Makro/ Tabelle einfärben

Verfasst: Di, 17.06.2008 16:44
von td22
Hallo komma4,

wie kann ich ein Makro in der Standardbibliothek installieren? Ich habe es sowohl colorAllTables als auch colorHeadTables probiert. Leider ohne Erfolg.

Re: Probleme beim Ausführen eines Makro/ Tabelle einfärben

Verfasst: Di, 17.06.2008 16:45
von td22
Habe selbst eine Beschreibung gefunden http://www.ooowiki.de/MakrosInstallieren, werde es mal ausprobieren.

Re: Probleme beim Ausführen eines Makro/ Tabelle einfärben

Verfasst: Di, 17.06.2008 16:56
von td22
Daran hat's gelegen, jetzt funktioniert's. Sehr hilfreich. Vielen Dank! :D

Re: Probleme beim Ausführen eines Makro/ Tabelle einfärben

Verfasst: Di, 17.06.2008 17:07
von td22
Nur aus Neugierde - mir ist aufgefallen, dass man die Hintergrundfarbe der Zellen durch eine beliebige andere Farbe (auch weiß) manuell überschreiben kann, die manuelle Zuweisung "ohne Füllung" bleibt aber ohne Wirkung. Woran liegt das?

Und: Gibt es eine Möglichkeit, den Prozess wieder rückgängig zu machen?

Andreas

Re: Probleme beim Ausführen eines Makro/ Tabelle einfärben

Verfasst: Di, 17.06.2008 17:33
von td22
Hmm, ganz aus Neugierde ist die Frage nicht mehr. Folgendes Problem mit dem Makro:

Wenn man nach Ausführen des Makros noch eine Zeile einfügt, anschließend das Makro neu ausführt, dann wird einfach jede zweite Zeile grau gemacht - aber die Zeilen dazwischen behalten die Farbe bei, die sie vorher hatten. (Ergebnis: viele graue Zeilen, wenige weiße Zeilen.) Wie lässt sich dieses Problem beheben? Ein vorheriges manuelles Zurücksetzen der Hintergrundfarbe scheint wie gesagt nicht möglich zu sein.

Danke
Andreas

Re: Probleme beim Ausführen eines Makro/ Tabelle einfärben

Verfasst: Di, 17.06.2008 20:13
von Stephan
die manuelle Zuweisung "ohne Füllung" bleibt aber ohne Wirkung. Woran liegt das?
kann ich mir nicht vorstellen das es ohne Wirkung bleibt, lediglich ist nichts zu sehen, weil die Farbe der Zeile nach wie vor vorhanden ist.
Gibt es eine Möglichkeit, den Prozess wieder rückgängig zu machen?
Weise den Zellen, nachdem Du ihnen die füllung genommen hast wiederum eine Füllung zu, die dann die Füllung der Zeile wieder überlagert.
Wie lässt sich dieses Problem beheben?
indem Du die Füllfarbe der Zeilen änderst - im Tabellendialog wo Du Zellen einstellst mußt Du eben Zeile einstellen
Ein vorheriges manuelles Zurücksetzen der Hintergrundfarbe scheint wie gesagt nicht möglich zu sein.
"Wie gesagt"? Oben ist immer nur die Rede davon das Du die Füllfarbe der Zellen und nicht etwa die der Zeile änderst.


Gruß
Stephan

Re: Probleme beim Ausführen eines Makro/ Tabelle einfärben

Verfasst: Do, 19.06.2008 11:19
von td22
Hallo Stephan,

vielen Dank für den Hinweis. Mal sehen, ob ich das jetzt richtig verstanden habe:

Es gibt für die Hintergrundfarbe verschiedene "Layers", die sich überlagern. Layer "Zelle" überlagert Layer "Zeile" überlagert Layer "Tabelle". Ändert man die Hintergrundfarbe über die Symbolleiste, so findet die Änderung immer für das Layer "Zelle" statt. Um eines der anderen beiden Layer zu ändern, muss man den Tabellendialog (Tabelle > Tabelleneigenschaften > Hintergrund) verwenden.

Das Makro colorAllTables fügt anscheinend ein viertes Layer zwischen "Zelle" und "Zeile" ein. (Änderungen für "Zelle" werden sichtbar, für "Zeile" und "Tabelle" bleiben unsichtbar.) Was ich immer noch nicht geschafft habe, ist, die Farben die durch das Makro vorgegeben werden, manuell zurückzusetzen. Im Tabellendialog tauchen nach wie vor nur die drei Layer Tabelle, Zelle, Zeile auf. Wie lässt sich die Tabelle so zurücksetzen, dass die erneute Ausführung des Makros den gewünschten Effekt bring?

Viele Grüße
Andreas

Re: Probleme beim Ausführen eines Makro/ Tabelle einfärben

Verfasst: Do, 19.06.2008 12:01
von Stephan
Es gibt für die Hintergrundfarbe verschiedene "Layers", die sich überlagern. Layer "Zelle" überlagert Layer "Zeile" überlagert Layer "Tabelle". Ändert man die Hintergrundfarbe über die Symbolleiste, so findet die Änderung immer für das Layer "Zelle" statt. Um eines der anderen beiden Layer zu ändern, muss man den Tabellendialog (Tabelle > Tabelleneigenschaften > Hintergrund) verwenden.
ja
Das Makro colorAllTables fügt anscheinend ein viertes Layer zwischen "Zelle" und "Zeile" ein.
meines Wissens nicht, denn im Code des Makros ist ersichtlich das es die Farbe für die Zeilen setzt:

Code: Alles auswählen

Sub SUB_setRowColor(oRow as Object)
' RGB(230,230,230) = gray 10 %
oRow.setPropertyValue("BackColor", RGB(230,230,230) )
End Sub
Wie lässt sich die Tabelle so zurücksetzen, dass die erneute Ausführung des Makros den gewünschten Effekt bring?
So wie ich es bereits hingeschrieben hatte:
indem Du die Füllfarbe der Zeilen änderst - im Tabellendialog wo Du Zellen einstellst mußt Du eben Zeile einstellen
also:
*markiere eine Zeile der Tabelle
*wähle im Kontextmenü der markierten Zeile den Eintrag "Tabelle..."
*wechsele im erscheinendebn Dialog zum Register Hintergrund
*stelle ein: als: Farbe und für: Zeile
*klicke unter "Himntergrundfarbe" auf "keine Füllung"
*klicke auf OK




Gruß
Stephan

Re: Probleme beim Ausführen eines Makro/ Tabelle einfärben

Verfasst: Mo, 23.06.2008 10:47
von td22
Hallo Stephan,

richtig, nach dieser Anleitung funktioniert es. Allerdings nur, wenn man nur eine einzelne Zeile markiert. Sobald man mehrere Zeilen oder die ganze Tabelle markiert, funktioniert es nicht mehr. (Das Drop-Downmenü, in dem ich vorher Farbe auswählte, fehlt dann). Jede Zeile einzeln zurücksetzen, ist nicht wirklich eine Lösung - dann könnte man ja gleich auf das Makro verzichten und die Zeilen per Hand einfärben.

Habe jetzt selbst eine einigermaßen brauchbare Lösung gefunden:
  • Die Tabelle ausschneiden bzw. kopieren
  • Bearbeiten > Inhalte einfüge > Formatierter Text [RTF]
Die Tabelle ist dann wieder ohne Hintergrund, allerdings gehen auch einige andere Formatierungen (z.B. hochgestellter Text) verloren.

Damit ist die Sache für mich geklärt, vielen Dank für eure Hilfe
Andreas