Re: [de-users] BasicMakro - CALC - bedingte Formatierung wird nicht aktiviert
Hallo Volker, ganz herzlichen Dank für den Hinweis. Mit || oB(1).Value = "INDIRECT(ADDRESS(ROW();COLUMN()))-INDIRECT(ADDRESS(ROW()-1;COLUMN())) < 0" || funktioniert es, wie es sollte. Mit || oB(1).Value = "INDIREKT(ADRESSE(ZEILE();SPALTE()))-INDIREKT(ADRESSE(ZEILE()-1;SPALTE())) < 0" || passiert folgendes: Nach Ausführung des Makros erscheint die Formel erst mal so || indirekt(adresse(zeile();spalte()))-indirekt(adresse(zeile()-1;spalte())) < 0 || unter [Format][Bedingte Formatierung]. Nach manuell [Format] > [Bedingte Formatierung] > [Verwalten...] > [Bearbeiten] > [OK] > [OK] ist sie dann so || INDIREKT(ADRESSE(ZEILE();SPALTE()))-INDIREKT(ADRESSE(ZEILE()-1;SPALTE())) < 0 || unter [Format][Bedingte Formatierung] eingetragen und funktioniert. In einem Beispiel von http://www.dannenhoefer.de/faqstarbasic/BedingteFormatierungInsert.html#BedingteFormatierungInsert ist die Formel auch in englischer Sprache eingetragen || oCondition(1).Value = "SUM(A1:A10) > 100" ||, was mir aber erst mal nicht wirklich aufgefallen ist. Bei Pitonyak/Lenhardt gibt es kein Beispiel mit "Formel". Aber weder bei Pitonyak/Lenhardt noch bei Dannenhöfer wird explizit darauf hingewiesen, dass in einer Formel englische Ausdrücke zu benutzen sind. Andere WEB-Quellen hatte ich nicht recherchiert. Ob BUG oder nicht, ist für mich als einen "Nicht-LO-Software-Entwickler" nicht wirklich entscheidbar, aber auffällig ist schon, dass die (deutsche) Formel nach manuell [Format] > [Bedingte Formatierung] > [Verwalten...] > [Bearbeiten] > [OK] > [OK] in Großbuchstaben umgewandelt wird und dann auch in deutscher Version funktioniert. Hinweise für Wolfgang: [1] Die Formel ist nicht fehlerhaft, sondern zur besseren Nachvollziehbarkeit aus dem "Zusammenhang gerissen" eines 1347 Zeilen langen Makros. [2] Normalerweise setze ich "bedingte Formatierungen" auch manuell, es kommt immer auf den Kontext der gesamten Anwendung an. Gruß Hans-Werner Hier noch der Vollständigkeit halber die ursprüngliche Problembeschreibung: [1] CALC-Tabelle |1|4|1|4| |2|3|2|3| |3|2|3|2| |4|1|4|1| [2] BasicMakro Sub BedingteFormatierung Dim oBF as Object ' obj Bedingung Format (Conditional Format) Dim oBFB as Object ' obj Bedingung Format Bereich Dim oB(2) as New com.sun.star.beans.PropertyValue ' Bedingung (Condition) oBFB = ThisComponent.Sheets(0).getCellRangeByPosition(0,0,3,3) oBF = oBFB.ConditionalFormat oB(0).Name = "Operator" oB(0).Value = com.sun.star.sheet.ConditionOperator.FORMULA oB(1).Name = "Formula1" oB(1).Value = "INDIREKT(ADRESSE(ZEILE();SPALTE()))-INDIREKT(ADRESSE(ZEILE()-1;SPALTE())) < 0" ' ERROR-Variante ' oB(1).Value = "INDIRECT(ADDRESS(ROW();COLUMN()))-INDIRECT(ADDRESS(ROW()-1;COLUMN())) < 0" ' OKAY-Variante oB(2).Name = "StyleName" oB(2).Value = "Bad" oBF.addNew(oB()) oBFB.ConditionalFormat = oBF End Sub -- Liste abmelden mit E-Mail an: users+unsubscr...@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
Re: [de-users] BasicMakro - CALC - bedingte Formatierung wird nicht aktiviert
Hallo Volker, Hans-Werner, das funktioniert! Kannst du erklären, warum das so ist? Versteht die Zuweisung in Basic nur die englische Formulierung, die wahrscheinlich die eigentlich gültige ist? Stößt der Dialog für die Bedingte Formatierung da die "Übersetzung" an? Das nur, um mein Wissen zu erweitern. Viele Grüße Gerhard Am 22.06.2020 um 23:32 schrieb Volker Lenhardt: Hallo, Hans-Werner, die Formeln müssen englisch sein. Versuch's mal mit: oB(1).Value = "INDIRECT(ADDRESS(ROW();COLUMN()))-INDIRECT(ADDRESS(ROW()-1;COLUMN())) < 0" Schöne Grüße Volker Am 22.06.20 um 20:17 schrieb OoOHWHOoO: Hallo, folgendes Problem: Gegeben sei folgende kleine CALC-Tabelle |1|4|1|4| |2|3|2|3| |3|2|3|2| |4|1|4|1| und dieser BasicMakro-Code: Sub BedingteFormatierung Dim oBF as Object ' obj Bedingung Format (Conditional Format) Dim oBFB as Object ' obj Bedingung Format Bereich Dim oB(2) as New com.sun.star.beans.PropertyValue ' Bedingung (Condition) oBFB = ThisComponent.Sheets(0).getCellRangeByPosition(0,0,3,3) oBF = oBFB.ConditionalFormat oB(0).Name = "Operator" oB(0).Value = com.sun.star.sheet.ConditionOperator.FORMULA oB(1).Name = "Formula1" oB(1).Value = "INDIREKT(ADRESSE(ZEILE();SPALTE()))-INDIREKT(ADRESSE(ZEILE()-1;SPALTE())) < 0" oB(2).Name = "StyleName" oB(2).Value = "Bad" oBF.addNew(oB()) oBFB.ConditionalFormat = oBF End Sub Nach Ausführung des Makros sind der "Bereich" ( oBFB ), die "Bedingung" ( oB(1).Value ) und die "Vorlage" ( oB(2).Value ) richtig eingetragen, aber die so eingetragene "bedingte Formatierung" ist nicht aktiv, d.h., keine Einfärbung der betroffenen Zellen gemäß "Vorlage". Nach manuell [Format] > [Bedingte Formatierung] > [Verwalten...] > [Bearbeiten] > [OK] > [OK] ist die "bedingte Formatierung" aktiv und die entsprechenden Zellen sind sofort eingefärbt. Der BasicMakro-Code ist sowohl bei Pitonyak/Lenhardt als auch Dannenhöfer so angegeben wie oben. Mir ist jedenfalls kein Unterschied aufgefallen ... Habe ich da noch irgendeinen Fehler in meinem BasicMakro-Code ? Fehlt da noch was, um die "bedingte Formatierung" zu aktivieren oder liegt da ein BUG vor ? Mir fällt im Moment nichts weiter ein, bin für jeden Hinweis dankbar Grüße Hans-Werner :-)) -- Liste abmelden mit E-Mail an: users+unsubscr...@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
Re: [de-users] BasicMakro - CALC - bedingte Formatierung wird nicht aktiviert
Am 22.06.2020 um 20:17 schrieb OoOHWHOoO: > > oB(1).Value = > "INDIREKT(ADRESSE(ZEILE();SPALTE()))-INDIREKT(ADRESSE(ZEILE()-1;SPALTE())) > < 0" Abgesehen davon, dass diese Formel fehlerhaft ist, nämlich für Zeile 1 ("Zeile()" = 0, und davon 1 abgezogen, ergibt als Adresse -1), weiß ich auch nicht, warum die Bedingte Formatierung nicht aktualisiert wird; scheint aber einfach so zu sein. > Nach Ausführung des Makros sind der "Bereich" ( oBFB ), die "Bedingung" > ( oB(1).Value ) und die "Vorlage" ( oB(2).Value ) richtig eingetragen, > aber die so eingetragene "bedingte Formatierung" ist nicht aktiv, d.h., > keine Einfärbung der betroffenen Zellen gemäß "Vorlage". Yepp; auffällig ist auch, dass die Formel nur mit Kleinbuchstaben in der Bedingten Formatierung steht, obwohl sie im Makro explizit in Großbuchsteben angegeben ist. Eine aktive Formel wird aber immer in Großbuchstaben umgewandelt, selbst wenn man sie in Kleinbuchsaben eingibt. Und nachdem du ... > Nach manuell > > [Format] > [Bedingte Formatierung] > [Verwalten...] > [Bearbeiten] > > [OK] > [OK] > > ist die "bedingte Formatierung" aktiv und die entsprechenden Zellen sind > sofort eingefärbt. ausgeführt hast, /steht/ sie auch in Großbuchstaben da. Das deutet für mich darauf hin, dass da was grundsätzliches schief läuft. Aber ob das ein Bug ist, oder einfach grundsätzlich gar nicht vorgesehen, kann ich nicht sagen. Ich hab jedenfalls noch nie eine Bedingte Formatierungen per Makro gesetzt, sondern diese immer einfach über das Format direkt kopiert (copy). Wolfgang -- Donald Trump ist ein großer Visionär, der seiner Zeit weit voraus ist: Er verbreitet schon jetzt den Slogan "make America great again", obwohl dieser erst in der Ära /nach/ ihm seine volle Bedeutung entfalten wird. -- Liste abmelden mit E-Mail an: users+unsubscr...@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
Re: [de-users] BasicMakro - CALC - bedingte Formatierung wird nicht aktiviert
Hallo, Hans-Werner, die Formeln müssen englisch sein. Versuch's mal mit: oB(1).Value = "INDIRECT(ADDRESS(ROW();COLUMN()))-INDIRECT(ADDRESS(ROW()-1;COLUMN())) < 0" Schöne Grüße Volker Am 22.06.20 um 20:17 schrieb OoOHWHOoO: Hallo, folgendes Problem: Gegeben sei folgende kleine CALC-Tabelle |1|4|1|4| |2|3|2|3| |3|2|3|2| |4|1|4|1| und dieser BasicMakro-Code: Sub BedingteFormatierung Dim oBF as Object ' obj Bedingung Format (Conditional Format) Dim oBFB as Object ' obj Bedingung Format Bereich Dim oB(2) as New com.sun.star.beans.PropertyValue ' Bedingung (Condition) oBFB = ThisComponent.Sheets(0).getCellRangeByPosition(0,0,3,3) oBF = oBFB.ConditionalFormat oB(0).Name = "Operator" oB(0).Value = com.sun.star.sheet.ConditionOperator.FORMULA oB(1).Name = "Formula1" oB(1).Value = "INDIREKT(ADRESSE(ZEILE();SPALTE()))-INDIREKT(ADRESSE(ZEILE()-1;SPALTE())) < 0" oB(2).Name = "StyleName" oB(2).Value = "Bad" oBF.addNew(oB()) oBFB.ConditionalFormat = oBF End Sub Nach Ausführung des Makros sind der "Bereich" ( oBFB ), die "Bedingung" ( oB(1).Value ) und die "Vorlage" ( oB(2).Value ) richtig eingetragen, aber die so eingetragene "bedingte Formatierung" ist nicht aktiv, d.h., keine Einfärbung der betroffenen Zellen gemäß "Vorlage". Nach manuell [Format] > [Bedingte Formatierung] > [Verwalten...] > [Bearbeiten] > [OK] > [OK] ist die "bedingte Formatierung" aktiv und die entsprechenden Zellen sind sofort eingefärbt. Der BasicMakro-Code ist sowohl bei Pitonyak/Lenhardt als auch Dannenhöfer so angegeben wie oben. Mir ist jedenfalls kein Unterschied aufgefallen ... Habe ich da noch irgendeinen Fehler in meinem BasicMakro-Code ? Fehlt da noch was, um die "bedingte Formatierung" zu aktivieren oder liegt da ein BUG vor ? Mir fällt im Moment nichts weiter ein, bin für jeden Hinweis dankbar Grüße Hans-Werner :-)) -- Liste abmelden mit E-Mail an: users+unsubscr...@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
[de-users] BasicMakro - CALC - bedingte Formatierung wird nicht aktiviert
Hallo, folgendes Problem: Gegeben sei folgende kleine CALC-Tabelle |1|4|1|4| |2|3|2|3| |3|2|3|2| |4|1|4|1| und dieser BasicMakro-Code: Sub BedingteFormatierung Dim oBF as Object ' obj Bedingung Format (Conditional Format) Dim oBFB as Object ' obj Bedingung Format Bereich Dim oB(2) as New com.sun.star.beans.PropertyValue ' Bedingung (Condition) oBFB = ThisComponent.Sheets(0).getCellRangeByPosition(0,0,3,3) oBF = oBFB.ConditionalFormat oB(0).Name = "Operator" oB(0).Value = com.sun.star.sheet.ConditionOperator.FORMULA oB(1).Name = "Formula1" oB(1).Value = "INDIREKT(ADRESSE(ZEILE();SPALTE()))-INDIREKT(ADRESSE(ZEILE()-1;SPALTE())) < 0" oB(2).Name = "StyleName" oB(2).Value = "Bad" oBF.addNew(oB()) oBFB.ConditionalFormat = oBF End Sub Nach Ausführung des Makros sind der "Bereich" ( oBFB ), die "Bedingung" ( oB(1).Value ) und die "Vorlage" ( oB(2).Value ) richtig eingetragen, aber die so eingetragene "bedingte Formatierung" ist nicht aktiv, d.h., keine Einfärbung der betroffenen Zellen gemäß "Vorlage". Nach manuell [Format] > [Bedingte Formatierung] > [Verwalten...] > [Bearbeiten] > [OK] > [OK] ist die "bedingte Formatierung" aktiv und die entsprechenden Zellen sind sofort eingefärbt. Der BasicMakro-Code ist sowohl bei Pitonyak/Lenhardt als auch Dannenhöfer so angegeben wie oben. Mir ist jedenfalls kein Unterschied aufgefallen ... Habe ich da noch irgendeinen Fehler in meinem BasicMakro-Code ? Fehlt da noch was, um die "bedingte Formatierung" zu aktivieren oder liegt da ein BUG vor ? Mir fällt im Moment nichts weiter ein, bin für jeden Hinweis dankbar Grüße Hans-Werner :-)) -- Liste abmelden mit E-Mail an: users+unsubscr...@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
Re: Re-2: [de-users] Draw und die Druckerei
Hallo Götz, Am 21.06.2020 um 11:41 schrieb Götz M. Ritter: > > Hallo Michael, > > die LO-Version ist: Version: 6.4.4.2 (x64) / > Build-ID: 3d775be2011f3886db32dfd395a6a6d1ca2630ff > > und mein OS ist: Win 10 Pro, 1909 (Build 18363.900) > > > PS: Ich habe jetzt selbst etwas experimentiert und herausgefunden, dass der > Fehler dann auftritt, wenn man im Register "Hervorheben" statt "Ohne" eine > Farbe festlegt. mit der Version 6.4.3 habe ich das von Dir beschriebene Verhalten nachvollziehen können. Es sieht für mich so aus, als wenn ein Schatten der Hervorhebung mit der gleichen Hervorhebungsfarbe als pdf exportiert wird: Wenn man sich die untere linke und die obere rechte Ecke der Hervorhebung genau anschaut, ist dort ein kleines Stück im pdf-Dokument "abgeknabbert" worden. Ich halte dies für einen Bug. Einen entsprechenden Bug Report in Bugzilla habe ich nicht gefunden. Der gleiche Bug tritt in Impress auf. In Writer tritt er nicht auf; eine Hervorhebung von Zeichen in Textfeldern ist dort nicht möglich. Das von Dir beschriebene Verhalten müsste bei einer der Versionen 5.3.1 bis 5.3.6 erstmalig aufgetreten sein. Genauer kann ich es nicht sagen, da ich nur noch die Versionen 5.3.0 und 5.3.6 und nicht die Versionen dazwischen installiert habe. Die Hervorhebung von Zeichen in Draw und Impress ist, soweit ich das sehe, mit der Version 5.1.0 eingeführt worden. Der pdf-Export der Hervorhebung war aber nicht möglich. Dieser Fehler ist dann aber irgendwann zwischen 5.3.0 und 5.3.6 behoben worden. Als Workaround wäre es möglich, anstatt der Hervorhebung der Zeichen die Flächenfunktion des Textfeldes zu benutzen (Menü: Format > Fläche > Fläche > Farbe). Ob dies für aber Dich passt, kann ich nicht sagen. Grüße Harald K. > > Gruß, Götz > > > Hallo Goetz, > >> Kein Problem, denke ich und exportiere. Das Ergebnis kann sich sehen >> lassen, aber - oh Schreck - eine Zeichenformatierung (Schatten) ist >> im pdf einfach verschwunden. Das geht natürlich gar nicht! > > Ich habe auf die Schnelle ein Testdokument gebastelt. > > Der Schriftschatten wird dabei problemlos exportiert: > > http://scitec4.org/DL/TestShadow.pdf > > > Immer die erste Frage: Welche Version auf welchem Betriebssystem setzt > du ein? > > Gruß, > Michael > -- LibreOffice - Die Freiheit nehm' ich mir! - www.libreoffice.de -- Liste abmelden mit E-Mail an: users+unsubscr...@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
Re: [de-users] Antwort: Festes Datum in Zelle bei CALC.
Hallo Jürgen, vielen Dank für Deinen Hinweis. Ich denke schon, daß das auch funktioniert. Nur für meine hiesigen Anwendungsfälle muß ich sagen, daß für alle - auch für die anderen Vorschlägen - bei allen Weitergaben, Release-Änderungen usw. auf auch diese Erweiterungen/Änderungen geachtet werden muß. So lange es da keine einfache Standardlösung gibt, kommt mir das doch etwas wie "Kneifzange" vor - Entschuldigung bitte für den harten Ausdruck. So bin ich momentan sicherer mit manueller Eingabe. Und so viel Aufwand ist das ja doch nicht, wenn auch nicht sehr elegant. Mir schwebte so eine Art Feldattribut - hier Zellenattribut - "computed when composed" vor, wie ich das aus anderer Programmierumgebung kenne, aber das würde wohl doch den Standard für Tabellenkalkulationen (Excel!) sprengen? Sinnvoll könnte ich mir das auch für andere Anwendungsfälle, andere Datentypen vorstellen. Grüße von Gisbert. -- Liste abmelden mit E-Mail an: users+unsubscr...@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