Office - Word, Excel und Co. 9.744 Themen, 41.408 Beiträge

OpenOffice Calc: Filterfunktion = Stehaufmännchen?

Olaf19 / 50 Antworten / Baumansicht Nickles

Hallo zusammen!

So alles in allem bin ich ja seit Jahren zufriedener OpenOffice-User - dem geschenkten Gaul schaut man schließlich nicht ins Maul, und für den privaten Bereich genügt es.

Zu den kleinen, aber feinen Unterschieden zu MS Office zählt die Filterfunktion in Calc. Abgesehen davon, dass die MS Excel-Funktion, speziell seit 2010, viel mächtiger ist - man kann Filterbedingungen schon sehr differenziert vorgeben - nervt mich der Filter von OO calc durch seine Penetranz. Er lässt sich nämlich nicht wieder abschalten!

D.h. natürlich kann man in OpenOffice Filter deaktivieren - bei der nächsten Gelegenheit tut er aber wieder so als ob nichts wäre, zu deutsch: er ist wieder da. Zum Beispiel wenn man das Tabellendokument speichert und später wieder öffnet, oder wenn man nach dem Deaktivieren des Filters das Tabellenblatt weiter bearbeitet. Irgendwann kommt der Filter und sagt: "Da bin ich wieder" ;-)

Die einzige Möglichkeit, einen Filter loszuwerden ist: neues Tabellenblatt anlegen - sämtliche Inhalte aus dem alten Blatt herüberkopieren - das alte Blatt löschen. Dann ist Ruhe im Karton, der Filter wird gottseidank nicht mitkopiert.

Das kann es aber doch irgendwie nicht sein, oder? Kennt ihr das Problem auch? Oder mache ich etwas falsch?

THX
Olaf

Die Welt ist ein Jammertal ohne Musik. Doch zum Glueck gab es Bach, Beethoven, Haendel und Goethe (Helge Schneider)
bei Antwort benachrichtigen
Olaf19 Nachtrag zu: „OpenOffice Calc: Filterfunktion = Stehaufmännchen?“
Optionen

Sorry, aber ich bin jetzt mal so frei und pushe meinen eigenen Thread wieder nach oben. Sonst eigentlich nicht meine Art, aber da dies mein erster nicht beantworteter Thread seit ewigen Zeiten ist... ja, hat wirklich keiner eine Idee?

THX
Olaf

Die Welt ist ein Jammertal ohne Musik. Doch zum Glueck gab es Bach, Beethoven, Haendel und Goethe (Helge Schneider)
bei Antwort benachrichtigen
Bäuerle1 Olaf19 „Sorry, aber ich bin jetzt mal so frei und pushe meinen ...“
Optionen

Hallo Olaf,

in OO 4.01 unter Win7 kann ich Dein geschildertes Problem nicht nachzuvollziehen.

Eine Möglichkeit besteht, das ein Standartfilter evtl nicht zurückgesetzt wurde.

Wie speicherst Du dein Tabellenblatt ab?

viele Grüße

Andy

bei Antwort benachrichtigen
Olaf19 Bäuerle1 „Hallo Olaf, in OO 4.01 unter Win7 kann ich Dein ...“
Optionen

Hi Bäuerle,

Ich speichere die OOcalc-Dateien immer im .ods-Format, also OO. Zwar unter Mac OS X 10.9, aber es wäre schon sehr ungewöhnlich, wenn es hier Unterschiede von Systemplattform zu Systemplattform gäbe.

Was ich merkwürdig finde: die Option "Filter entfernen" ist immer ausgegraut, also deaktiviert. Lediglich AutoFilter ausblenden lässt sich anwählen. Und dass ein Filter, der längst weg ist, später unverhofft wiederkommt, macht für mich auch keinen Sinn.

THX
Olaf

Die Welt ist ein Jammertal ohne Musik. Doch zum Glueck gab es Bach, Beethoven, Haendel und Goethe (Helge Schneider)
bei Antwort benachrichtigen
Bäuerle1 Olaf19 „Hi Bäuerle, Ich speichere die OOcalc-Dateien immer im ...“
Optionen

Hi,

teste mal die Filter direkt zurückzusetzen, wobei ich vermute dass dies Dir nicht hilft.

Ansonsten kann ich Dir hier nicht mehr weiterhelfen.

Hoffe Du kriegst das in den Griff.

Viele Grüße nochmal und schönes WE

Andy

bei Antwort benachrichtigen
Olaf19 Bäuerle1 „Hi, teste mal die Filter direkt zurückzusetzen, wobei ich ...“
Optionen

Hi Andy, das hatte ich schon probiert:

teste mal die Filter direkt zurückzusetzen, wobei ich vermute dass dies Dir nicht hilft.

Richtig ;-) Leider hat das nichts geändert.

Letztlich ist das kein K.O.-Kriterium gegen OpenOffice, aber ein wenig lästig ist es doch.

THX und sonnigen Sonntag!
Olaf

Die Welt ist ein Jammertal ohne Musik. Doch zum Glueck gab es Bach, Beethoven, Haendel und Goethe (Helge Schneider)
bei Antwort benachrichtigen
mumpel1 Olaf19 „Hi Andy, das hatte ich schon probiert: Richtig - Leider hat ...“
Optionen

Hallo!

Vielleicht programmierst Du Dir ein Autostart-Makro, welches beim Öffnen der Datei alle Filter löscht. Damit die Filter nur dann gelöscht werden wenn Du es möchtest kannst Du die Codeausführung von einem Zellinhalt abhängig machen.

Gruß, René

bei Antwort benachrichtigen
Olaf19 mumpel1 „Hallo! Vielleicht programmierst Du Dir ein Autostart-Makro, ...“
Optionen

Hi René,

Hast du evtl. einen Link zu einer Schritt-für-Schritt-Anleitung wie man so etwas macht, und mit wie viel Zeitaufwand wäre das verbunden?

Über Google habe ich - auf gut Deutsch gesagt - nur Mist gefunden. Alle sagen, ja das geht, aber keiner erklärt wie. Alle verweisen mit einem arroganten Unterton auf die Suchfunktion des Open-Office-Forums. Rufe ich die auf, heißt es, diese Suchfunktion steht dir nicht zur Verfügung. Toll!

Egal wie es ausgeht: in jedem Fall ein dicker Punktsieg für Microsoft Excel. Wenn man da einen Filter setzt, ist er da - schaltet man ihn ab, ist er weg, auch ohne, dass man sich da mit Visual Basic herumquälen muss.

CU
Olaf

Die Welt ist ein Jammertal ohne Musik. Doch zum Glueck gab es Bach, Beethoven, Haendel und Goethe (Helge Schneider)
bei Antwort benachrichtigen
mumpel1 Olaf19 „Hi René, Hast du evtl. einen Link zu einer ...“
Optionen

Ich werde morgen mal schauen ob ich die Prozedur noch zusammenbekomme. Habe schon 6 Jahre nichts mehr in Starbasic programmiert.

Wie man beim Öffnen eines Dokuments ein Makro ausführen kann, kannst Du hier nachlesen => https://help.libreoffice.org/Basic/Event-Driven_Macros/de

bei Antwort benachrichtigen
Olaf19 mumpel1 „Ich werde morgen mal schauen ob ich die Prozedur noch ...“
Optionen

Da wäre für mich die erste Frage, wo in Open Office ich dieses Starbasic überhaupt aufrufen kann. Die Hilfe-Funktion jedenfalls kennt diesen Begriff nicht, auch nicht mit Leerzeichen in der Mitte (Star Basic). Oder muss man da irgendwas nachinstallieren?

Danke für den Link und bis morgen.Olaf

Die Welt ist ein Jammertal ohne Musik. Doch zum Glueck gab es Bach, Beethoven, Haendel und Goethe (Helge Schneider)
bei Antwort benachrichtigen
mumpel1 Olaf19 „Da wäre für mich die erste Frage, wo in Open Office ich ...“
Optionen

Auch in OOO ruft man den Basic-Editor mit Alt+F11 auf.

Das Problem ist dass man nur den Autofilter per Code entfernen kann. Die anderen Filter bekommt man nur weg wenn die/alle gefilterten Zellen auch markiert sind, und zwar NUR diese Zellen. Ist also nicht so einfach wie in Excel.

Da bleibt nur, die Inhalte in ein neues Tabellenblatt zu kopieren und das alte Blatt zu löschen, das liese sich per Code erledigen. Oder eben doch alles manuell erledigen.

bei Antwort benachrichtigen
mumpel1 Olaf19 „Da wäre für mich die erste Frage, wo in Open Office ich ...“
Optionen

Und hier noch ein Beispielcode für das Löschen der Autofilter. Da man hier Code nicht vernünftig darstellen kann, habe ich ihn auf meiner Homepage abgelegt.

http://www.rholtz-office.de/vbacodes/187594221047265.html

bei Antwort benachrichtigen
Olaf19 mumpel1 „Und hier noch ein Beispielcode für das Löschen der ...“
Optionen

Ganz vielen herzlichen Dank, Mumpel - ich hoffe, den Code hattest du schon vorher parat und hast den jetzt nicht extra meinetwegen erstellt?

Wie auch immer. Hau ich mir heute Abend gleich mal drauf.- Zu deinem Beitrag eins höher:

Da bleibt nur, die Inhalte in ein neues Tabellenblatt zu kopieren und das alte Blatt zu löschen, das liese sich per Code erledigen.

Dann hatte ich mich in diesem Punkt also doch nicht getäuscht - schade, dass das nicht ganz so reibungslos geht wie in Excel.

THX
Olaf

Die Welt ist ein Jammertal ohne Musik. Doch zum Glueck gab es Bach, Beethoven, Haendel und Goethe (Helge Schneider)
bei Antwort benachrichtigen
mumpel1 Olaf19 „Ganz vielen herzlichen Dank, Mumpel - ich hoffe, den Code ...“
Optionen

Den Code habe ich erst erstellt. Ist aber nicht so schwer wie es aussieht.

bei Antwort benachrichtigen
mumpel1 Olaf19 „Ganz vielen herzlichen Dank, Mumpel - ich hoffe, den Code ...“
Optionen

Noch eine Anmerkung:

Mit der Prozedur "VisibleRowsColumns" werden alle Zeilen und Spalten in der Datei eingeblendet. Die Filterkriterien sind dann zwar immernoch eingetragen, aber der Standardfilter z.B. blendet ja auch nur Zeilen und/oder Spalten aus. Mit der Prouedur kann man wenigstens ein wenig nachhelfen und alles einblenden was der Filter ausgeblendet hat.

bei Antwort benachrichtigen
Olaf19 mumpel1 „Und hier noch ein Beispielcode für das Löschen der ...“
Optionen

So, jetzt habe ich mir das Makro in meine fragliche Datei als "Modul1" einkopiert - und sehe mit Schrecken, nachdem ich Makros aus zuverlässigen Quellen in den Sicherheitseinstellungen erlaubt habe: Ich muss mir jetzt die Java-Runtime-Umgebung installieren - sonst funktionieren keine Makros...? Das wäre ja ärgerlich.

CU
Olaf

Die Welt ist ein Jammertal ohne Musik. Doch zum Glueck gab es Bach, Beethoven, Haendel und Goethe (Helge Schneider)
bei Antwort benachrichtigen
mumpel1 Olaf19 „So, jetzt habe ich mir das Makro in meine fragliche Datei ...“
Optionen

Ohne JRE keine Makros.

bei Antwort benachrichtigen
winnigorny1 mumpel1 „Ohne JRE keine Makros.“
Optionen
Ohne JRE keine Makros.

Jepp! - Musste ich auch lernen, nachdem ich Java in OO aus Sicherheitsgründen deaktiviert hatte. Aber Gottseidank brauche ich sie für meine Aufgaben nicht. Und seit man als Unternehmer seine Steuererklärungen jetzt endlich auch ohne Java abgeben kann (Jo - es gibt ne Elster-Version, die kommt doch tatsächlich ohne aus, nachdem ich die Finanzbehörden seit Jahren damit vollsabbel und mich immer wieder erst mal geweigert habe, meine Steuererklärung online abzugeben. Das gibt dann ein halbes Jahr böse Drohungen bis hin zu letzten Aufforderung; aber immerhin habe ich so schon einmal meine Steuernachzahlung kostenfrei um zwei Jahre verschieben können.), gibt es auf meinen Rechnern einfach kein Java mehr. - Wer braucht den Scheiß denn sonst noch überhaupt - außer Leuten, die versuchen, mehr Tiefe aus Calc rauszuholen...... Zwinkernd

Gruss aus dem schoenen Hamburg, Winni
bei Antwort benachrichtigen
mumpel1 winnigorny1 „Jepp! - Musste ich auch lernen, nachdem ich Java in OO aus ...“
Optionen

Weshalb müsste ihr immer alles was euch nicht gefällt als "S***ß" bezeichnet? Weshalb haben alle nur soviel Angst vor der JRE? Weil es so in den PC-Zeitschriften steht? M.E. muss man keine Angst vor der JRE haben. Die Gefahr, auf der Straße überfallen zu werden, ist ganz erheblich höher als über die JRE "angegriffen" zu werden.

Und Einbildung macht die Leute krank. Also legt Eure Ängste ab....

bei Antwort benachrichtigen
winnigorny1 mumpel1 „Weshalb müsste ihr immer alles was euch nicht gefällt als ...“
Optionen

Nix da, ich pflege meine Pobien! Zunge raus - Und sorry für das "Unwort"  - Obwohl: Es steht auch im Duden!! Unschuldig

Gruss aus dem schoenen Hamburg, Winni
bei Antwort benachrichtigen
winnigorny1 Nachtrag zu: „Nix da, ich pflege meine Pobien! - Und sorry für das Unwort ...“
Optionen

Phobien! - Ich meinte natürlich Phobien und nicht Pobienen oder so! LOL!

Gruss aus dem schoenen Hamburg, Winni
bei Antwort benachrichtigen
Olaf19 mumpel1 „Weshalb müsste ihr immer alles was euch nicht gefällt als ...“
Optionen

Hallo Mumpel,

Ich bin jetzt wirklich in der Zwickmühle... seit der (vor-?)vorletzten Mac OS X-Version wird "ab Werk" kein Java mehr mitgeliefert. Das muss man sich später nachinstallieren, wenn man es denn braucht. Da bislang aber kein Programm danach verlangt hat, sogar OpenOffice sein Gemecker über ein nicht vorhandenes Java RE eingestellt hat - früher gab es da immer hartnäckig wegzuklickende Fehlermeldungen - habe ich die letzten ein, zwei Jahre komplett auf Java verzichtet.

Es jetzt wieder nachzuinstallieren, nur um einen offensichtlichen OO-Bug mit einem Workaround wegzubekommen - denn etwas anderes ist es ja nicht, wenn man ein Makro dazu benutzt, um einer hakelnde Standardfunktion aufzuhelfen - erscheint mir ein wenig mit Kanonen auf Spatzen geschossen.

Dir gegenüber ist mir das peinlich, denn du hattest dir die Mühe mit dem Makro gemacht... ein salomonischer Kompromiss wäre: Ich hau mir jetzt die JRE drauf, ist eh nur vorübergehend, denn am nächsten Wochenende wollte ich mein "Mavericks"-OS mit der neuen Version "Yosemite" überbügeln. Dann könnte ich wenigstens einmal ausprobieren ob alles wie gewünscht funktioniert.

SRY
Olaf

Die Welt ist ein Jammertal ohne Musik. Doch zum Glueck gab es Bach, Beethoven, Haendel und Goethe (Helge Schneider)
bei Antwort benachrichtigen
mumpel1 Olaf19 „Hallo Mumpel, Ich bin jetzt wirklich in der Zwickmühle... ...“
Optionen

Das ist eben ein Krampf mit dem JRE. Vielleicht schaffen es die Programmierer ja mal, auf JRE verzichten zu können.

BTW:

In Excel wurde dieses Phänomen auch schon beobachtet. Das scheint ein generelles Problem bei Tabellenkalkulationen zu sein. Manchmal tritt das Problem auch auf, wenn man die Zeilen/Spalten manuell einblendet, aber den Filter bzw. die Filterkriterien drin lässt. Eine zeitlang geht das gut. Aber irgendwann "merkt" Excel dass da ja noch ein Filter existiert und setzt ihn dann.

bei Antwort benachrichtigen
Olaf19 mumpel1 „Das ist eben ein Krampf mit dem JRE. Vielleicht schaffen es ...“
Optionen
Das ist eben ein Krampf mit dem JRE. Vielleicht schaffen es die Programmierer ja mal, auf JRE verzichten zu können.       

Das wäre nett ;-) Ich will jetzt auch keinen Kreuzzug gegen JRE anzetteln, nur - mit je weniger Zusatzkomponenten ich mein System be- oder gar überfrachten muss, desto wohler ist mir dabei. Z.B. verzichte ich seit einiger Zeit auch auf den "X11-Server". Der wurde (und wird?) von GIMP unter OS X immer verlangt. In letzter Zeit habe ich mich mit den rudimentären Editierfunktionen der Bildvorschau zufriedengegeben um auf X11 verzichten zu können. Evtl. schieße ich mir einmal günstig das Photoshop Elements.

In Excel wurde dieses Phänomen auch schon beobachtet. Das scheint ein generelles Problem bei Tabellenkalkulationen zu sein..      

Das ist interessant - in Excel ist mir das noch nie passiert, in all den Jahren nicht, und in der Firma arbeite ich tagtäglich damit. Generell muss ich sagen, dass ich das Handling von Filter- und Sortierfunktionen, Pivot-Tabellen etc. in MS Office deutlich komfortabler finde als in OO.

Ich mag OO wirklich gern, aber hier muss ich doch einmal die Phrase vom "geschenkten Gaul" bemühen.

CU
Olaf

Die Welt ist ein Jammertal ohne Musik. Doch zum Glueck gab es Bach, Beethoven, Haendel und Goethe (Helge Schneider)
bei Antwort benachrichtigen
mumpel1 Olaf19 „Das wäre nett - Ich will jetzt auch keinen Kreuzzug gegen ...“
Optionen

Schade dass man in ODS-Dateien keinen VBA-Code integrieren kann. Sonst könnte man vielleicht "durch die Hintertür" etwas machen, vorausgesetzt dass der VBA-Code ohne JRE läuft.

So schlimm ist das aber nicht. Vielleicht kann ja ein anderer Anwender mit meinem Beispielcode etwas anfangen. Schlimmer als der JRE-Zwang sind aber m.E. die OOo/LibreOffice-Foren, bei denen man nur Links bekommt anstatt vernünftiger Hilfe. Zwinkernd

bei Antwort benachrichtigen
Olaf19 mumpel1 „Schade dass man in ODS-Dateien keinen VBA-Code integrieren ...“
Optionen
So schlimm ist das aber nicht. Vielleicht kann ja ein anderer Anwender mit meinem Beispielcode etwas anfangen.

Das würde mich freuen. Und auch ich habe deinen Code gern angeschaut, versucht mich da etwas einzulesen. Logisch aufgebaut ist das ganze ja.

Schlimmer als der JRE-Zwang sind aber m.E. die OOo/LibreOffice-Foren, bei denen man nur Links bekommt anstatt vernünftiger Hilfe.

Ist mir auch schon in vielen anderen Foren aufgefallen. Ich sehe das immer mit dem sprichwörtlichen "lachenden und weinenden" Auge: natürlich muss man die Welt nicht ständig neu erfinden; wenn gerade letzte Woche jemand sinngemäß das gleiche gefragt hat, kann man natürlich verlinken.

Auf der anderen Seite entsteht auf die Weise aber keine lebendige Diskussion, die neue Substanz und Erkenntnisse bringt. Wer immer nur verlinkt, schmort irgendwann im eigenen Saft.

CU
Olaf

Die Welt ist ein Jammertal ohne Musik. Doch zum Glueck gab es Bach, Beethoven, Haendel und Goethe (Helge Schneider)
bei Antwort benachrichtigen
Bäuerle1 Olaf19 „Das würde mich freuen. Und auch ich habe deinen Code gern ...“
Optionen

hallo Olaf,

vielleicht noch dies für Dich,

Ist zwar schon älter und auch auf Ubuntu, aber vielleicht hilfts:

https://bugs.launchpad.net/ubuntu/+source/openoffice.org/+bug/323675

Noch eine Bemerkung zu Java:

Openoffice ist auch mit Python zu erweitern. So als Gedanke. 

viele Grüße

Andy

bei Antwort benachrichtigen
mumpel1 Bäuerle1 „hallo Olaf, vielleicht noch dies für Dich, Ist zwar schon ...“
Optionen
Openoffice ist auch mit Python zu erweitern

Aber wer kann das schon? Mir reichen VBA, Starbasic, HTML, XML und ein wenig PHP. Da brauch ich nicht noch mehr Programmiersprachen.

bei Antwort benachrichtigen
mumpel1 Olaf19 „Das würde mich freuen. Und auch ich habe deinen Code gern ...“
Optionen
Logisch aufgebaut ist das ganze ja

So soll es auch sein.

Vor allem ist Starbasic sprachorientiert (englisch, nicht amerikanisch wie VBA Zwinkernd ).

Beispiel ausblenden einer Zeile. In Starbasic .Rows.IsVisible, in VBA .EntireRow.Hidden.  Also was klingt verständlicher?

bei Antwort benachrichtigen
Bäuerle1 mumpel1 „So soll es auch sein. Vor allem ist Starbasic ...“
Optionen

@Olaf19,

aktiviere die Spaltenkopf, sodass die ganzen Spalten ausgewählt sind, dann

> Format > Zeile > alle anzeigen,

es müssten dadurch wieder alle Zeilen verfügbar sein.

Andy

bei Antwort benachrichtigen
Olaf19 Bäuerle1 „@Olaf19, aktiviere die Spaltenkopf, sodass die ganzen ...“
Optionen

Hi nochmal,

es müssten dadurch wieder alle Zeilen verfügbar sein.

Die Zeilen waren immer alle verfügbar! Das ist nicht das Problem. Aber diese hässlichen "Klötzchen mit Wimpel dran" (= Filter ist gesetzt) sind andauernd wieder aufgekreuzt.

Jetzt habe ich mir erst einmal diese Ubuntu-Seite "gebookmarked". Sollte ich nochmals Filter-Besuch bekommen, muss ich das einfach durcharbeiten.

Recht vielen Dank!!

CU
Olaf

Die Welt ist ein Jammertal ohne Musik. Doch zum Glueck gab es Bach, Beethoven, Haendel und Goethe (Helge Schneider)
bei Antwort benachrichtigen
Olaf19 mumpel1 „So soll es auch sein. Vor allem ist Starbasic ...“
Optionen
Beispiel ausblenden einer Zeile. In Starbasic .Rows.IsVisible, in VBA .EntireRow.Hidden.  Also was klingt verständlicher?

Es klingt so, als würde das eine genau das Gegenteil vom anderen meinen! Also in Starbasic: mehrere Spalten einblenden, und in VBA: nur eine Spalte ausblenden. Mit britischen oder amerikanischem Englisch hat das allerdings erstmal nichts zu tun.

Nebenbei... ich beherrsche keine dieser Programmiersprachen. Nur, wenn ich den Code lese, kann ich mir schon eine Menge darunter vorstellen. Ende der 80er habe ich am Atari mit Omikron-Basic (dilettantisch) programmiert, da bleibt natürich immer etwas hängen.

Ich saß neulich mit einem SAP-Programmierer zusammen, der etwas für mein Projekt entwickelt. Er hat mir hie und da ein Stück vom ABAP-Code gezeigt, und ich fand das vom Gesamteindruck ziemlich human lesbar.

Riesendank auch an dich!

CU
Olaf

Die Welt ist ein Jammertal ohne Musik. Doch zum Glueck gab es Bach, Beethoven, Haendel und Goethe (Helge Schneider)
bei Antwort benachrichtigen
mumpel1 Olaf19 „Es klingt so, als würde das eine genau das Gegenteil vom ...“
Optionen
Es klingt so, als würde das eine genau das Gegenteil vom anderen meinen

So ist es, beinahe. M.E. sind doch die Ammis schuld, die denken immer andersrum. Zwinkernd Gemeint ist eigentlich in beiden Fällen das selbe, nur jeweils in die andere Richtung.

Nur zur Übung dafür zwei Beispiele (Einblenden von Zeilen).

-----------------------------

Sub VisibleShRowsCalc()

 Dim Blatt As Object

  For Each Blatt In ThisComponent.Sheets
           Blatt.Rows.IsVisible = True
  Next Blatt

End Sub

-----------------------------

-----------------------------

Sub VisibleShRowsExcel()

Dim Blatt As Worksheet

  For Each Blatt In ThisWorkbook.Sheets
           Blatt.Rows.EntireRow.Hidden = False
  Next Blatt

End Sub

-----------------------------

bei Antwort benachrichtigen
Olaf19 mumpel1 „So ist es, beinahe. M.E. sind doch die Ammis schuld, die ...“
Optionen
Blatt.Rows.IsVisible = True
Blatt.Rows.EntireRow.Hidden = False

Logisch: "Ja, das Blatt ist sichtbar" = "Nein, das Blatt ist nicht versteckt". Nicht schön, aber zutreffend :-)

Was lernt der Mensch im Kommunikationstraining: "Man soll immer positiv formulieren" - also, mir gefällt Variante A deutlich besser.

Einen Schritt weiter gedacht: Wenn "Hidden" der in 99% der Fälle zutreffende Normalzustand wäre, dann wäre die Formulierung "hidden = false" anschaulicher. Aber eben auch nur dann, und das ist bei ein-/ausgeblendeten Spalten ja nicht der Fall.

Ja, kann gut sein, dass die Amis da ein wenig schräge drauf sind...

CU
Olaf

Die Welt ist ein Jammertal ohne Musik. Doch zum Glueck gab es Bach, Beethoven, Haendel und Goethe (Helge Schneider)
bei Antwort benachrichtigen
mumpel1 Olaf19 „Logisch: Ja, das Blatt ist sichtbar Nein, das Blatt ist ...“
Optionen

Visible/Hidden beziehen sich hier zwar auf die Zeilen (Rows), aber recht hast Du.

Stellt sich nur die Frage wer bestimmt was positiv ist und was negativ. Zwinkernd

bei Antwort benachrichtigen
Olaf19 mumpel1 „Visible/Hidden beziehen sich hier zwar auf die Zeilen Rows , ...“
Optionen
Zeilen (Rows)

Oops... ich dachte: Zeilen = Lines, Spalten = Rows? Ist das bei Office auf angelsächsisch genau andersraum?

CU
Olaf

Die Welt ist ein Jammertal ohne Musik. Doch zum Glueck gab es Bach, Beethoven, Haendel und Goethe (Helge Schneider)
bei Antwort benachrichtigen
mumpel1 Olaf19 „Oops... ich dachte: Zeilen Lines, Spalten Rows? Ist das bei ...“
Optionen

Zeilen = Rows, Spalten = Columns. Ist in Starbasic und in VBA gleich. Aber vom Prinzip her hast Du recht. IsVisible klingt besser als Hidden. Wir im Deutschen sagen "in einer Zeile", im Englischen sagt man anscheinend "in Reihe".

"Blatt" ist das Sheet (ich nutze "Blatt", da es verständlicher klingt als nur "Sh" für "Sheet") und bezieht sich auf "ThisWorkbook". 

bei Antwort benachrichtigen
Olaf19 mumpel1 „Zeilen Rows, Spalten Columns. Ist in Starbasic und in VBA ...“
Optionen
Wir im Deutschen sagen "in einer Zeile", im Englischen sagt man anscheinend "in Reihe".

Das ist jetzt mal eine richtige Bildungslücke von mir... denn auch in anderem Kontext ist nicht von lines die Rede: eight rows and eight columns => http://en.wikipedia.org/wiki/Chessboard - oder auch: files and ranks.

Nicht bekannt waren mir übrigens auch die Dialog- und Diagrammblätter; ich kannte bislang nur die "ganz normalen" Tabellenblätter, bzw. war mir nicht bewusst, dass es für Diagramme noch einen eigenen Blattyp gibt. Muss ich mir nachher gleich mal anschauen, wenn ich in der Firma wieder vor Excel sitze.

THX!
Olaf

Die Welt ist ein Jammertal ohne Musik. Doch zum Glueck gab es Bach, Beethoven, Haendel und Goethe (Helge Schneider)
bei Antwort benachrichtigen
mumpel1 Olaf19 „Das ist jetzt mal eine richtige Bildungslücke von mir... ...“
Optionen

Vielleicht überfällt Dich ja doch mal die Lust, Starbasic und/oder VBA zu lernen (schaden kann es nicht).  Zwinkernd

Die anderen Blatttypen sind Relikte aus alten Zeiten, die kaum noch jemand benutzt.

Es gibt auch noch "Modulblätter" (die Vorgänger der VBA-Module, Office 95). Aber nurnoch inoffiziell und auch nurnoch mit Tricks einzufügen. Sichtbar nur im VBA-Editor. Und extrem unsicher, da sie auch bei geschütztem VBA-Projekt ganz leicht in andere Dateien kopiert werden können.

bei Antwort benachrichtigen
Olaf19 mumpel1 „Vielleicht überfällt Dich ja doch mal die Lust, Starbasic ...“
Optionen
Vielleicht überfällt Dich ja doch mal die Lust, Starbasic und/oder VBA zu lernen (schaden kann es nicht). 

Nein, schaden kann es auf keinen Fall. Ganz im Gegenteil.- Schande über mein Haupt: bis vor wenigen Tagen war mir noch nicht einmal klar, dass es überhaupt eine solche Programmierschnittstelle unter OO gibt. Ich dachte allen Ernstes, das wäre eine "Spezialität" von Microsoft, mit dem Visual Basic for Applications in Excel...

Ja, schon verrückt, dieser Thread: am 19. Oktober gestartet und null Resonanz. Und jetzt ist er noch richtig lang geworden.

Jedenfalls danke für die umfassenden Infos. Wieder viel dazugelernt.

Greetz
Olaf

Die Welt ist ein Jammertal ohne Musik. Doch zum Glueck gab es Bach, Beethoven, Haendel und Goethe (Helge Schneider)
bei Antwort benachrichtigen
mumpel1 Olaf19 „Nein, schaden kann es auf keinen Fall. Ganz im Gegenteil.- ...“
Optionen

Falls Du mal damit anfangen solltest wirst Du bei der Makroaufzeichnung eine (negative?) Überraschung erleben. Denn der Makrorekorder in OOo/LibreOffice zeichnet in Dispatcher-Code (UNO-Code) auf, nicht in nativen Code wie aus VBA bekannt. Mein Beispielcode aus diesem Thread ist nativer Code. Dispatcher-Code und nativer Code unterscheiden sich erheblich voneiander.

bei Antwort benachrichtigen
Olaf19 mumpel1 „Falls Du mal damit anfangen solltest wirst Du bei der ...“
Optionen

Das wäre sogar eine sehr negative Überraschung. Denn bei Makros in MS Office habe ich gelegentlich den Code manuell nachbearbeitet. Ich beherrsche zwar kein VBA, aber wenn man sich den Code aufmerksam anschaut, kann man sich das eine oder andere zusammenreimen. Auf die Weise konnte ich eine Makro-Ausführung, die mehrere Sekunden dauerte, auf 1 Sek. begrenzen.

Das klingt jetzt erst einmal ziemlich lächerlich, aber wenn man so ein Makro ständig benutzt, dann ist es schon lästig, wenn man jedes Mal auf einen Hänger warten muss. Na gut, ein wenig Neugier und Forschergeist waren mit im Spiel.

Diesen UNO-Code schau ich mir am Wochenende einmal an. Vielleicht bin ich sogar im Vorteil, wenn ich VBA nicht richtig beherrsche, dann brauche ich mich nur ein-, nicht aber umzugewöhnen.

CU
Olaf

Die Welt ist ein Jammertal ohne Musik. Doch zum Glueck gab es Bach, Beethoven, Haendel und Goethe (Helge Schneider)
bei Antwort benachrichtigen
mumpel1 Olaf19 „Das wäre sogar eine sehr negative Überraschung. Denn bei ...“
Optionen

Ich mag diesen UNO-Code nicht. Da kann ich nämlich nichts reduzieren. Dadurch wirkt der Code sehr unübersichtlich und aufgebläht. Ich gehöre zu denen die so wenig Codezeilen als nur möglich haben möchten. Für "kurze Aktionen" mag der UNO-Code gut sein (wenigstens muss man sich da nicht mit Select und Activate rumschlagen wie beim VBA-Macrorecorder), aber für umfangreiche Abläufe wenig geeignet. Meine VBA-Projekte sind sehr umfangreich (das Kleinste 436 Codezeilen, das Größte 5400 Codezeilen). In UNO-Code überführt würden sich die Codezeilen vervielfachen. Aber für Deine Zwecke könnte UNO-Code schon reichen.

bei Antwort benachrichtigen
Olaf19 mumpel1 „Ich mag diesen UNO-Code nicht. Da kann ich nämlich nichts ...“
Optionen
Ich gehöre zu denen die so wenig Codezeilen als nur möglich haben möchten.

Auch wenn ich nur Laie bin: ich vermute, das hat beides Vor- und Nachteile.

Wenn die gleiche Aktion mit nur wenigen Codezeilen beschrieben wird, muss der Code inhaltlich stark komprimiert sein. Bildlich gesagt, jede einzelne Zeile hätte dann eine geballte Ladung Inhalt.

Bei vielen Codezeilen mit weniger "Gehalt" ist der Code vermutlich punktuell leichter les- und verstehbar, dafür aber auch redundanter und wirkt mit Blick aufs Ganze eher dick aufgeplustert.

Das ist aber wirklich nur eine Laienvermutung. So stelle ich es mir vor. Aber ich werde es ja sehen, wenn mir einmal der UNO-Code in die Finger fällt.

CU
Olaf

Die Welt ist ein Jammertal ohne Musik. Doch zum Glueck gab es Bach, Beethoven, Haendel und Goethe (Helge Schneider)
bei Antwort benachrichtigen
mumpel1 Olaf19 „Auch wenn ich nur Laie bin: ich vermute, das hat beides ...“
Optionen
jede einzelne Zeile hätte dann eine geballte Ladung Inhalt.

Nicht unbedingt.

-------------------

Sheets(1).Range("A1:A10").Copy

Sheets(2).Select

Range("A1").Select

Selection.Paste

-------------------------------------

Dieser Code lässt sich auf eine Zeile kürzen.

------------------

Sheets(1).Range("A1:A10").Copy Sheets(2).Range("A1")

------------------

Viel abkürzen lässt sich auch mit einem With-Block. Und Code einzurücken ist auch wichtig für die Lesbarkeit. Aber das lernst Du schnell. ;-) Das würde jetzt hier den Rahmen sprengen.

bei Antwort benachrichtigen
Olaf19 mumpel1 „Nicht unbedingt. ------------------- Sheets 1 .Range A1:A10 ...“
Optionen
Und Code einzurücken ist auch wichtig für die Lesbarkeit. Aber das lernst Du schnell. ;-)

Das wiederum war mir bereits bekannt. Nur dadurch werden For-, While-, Repeat-Schleifen und If- oder Case-Abfragen für Menschen gut lesbar :-)

Greetz
Olaf

Die Welt ist ein Jammertal ohne Musik. Doch zum Glueck gab es Bach, Beethoven, Haendel und Goethe (Helge Schneider)
bei Antwort benachrichtigen
mumpel1 Olaf19 „Das wiederum war mir bereits bekannt. Nur dadurch werden ...“
Optionen

Mit "verkürzen" meinte ich allerdings nicht "code komprimieren", sondern vielmehr das Weglassen unnötiger Zeilen. Was mich immer wieder ärgert ist, dass einige (sogar die die sich selber als "Professional" bezeichen") z.B. mehrere Deklarationen in einer Zeile haben, oder mehr Objekte nutzen als (in VBA) erforderlich. Noch ein Beispiel dafür.

---------------------

Sub Test()

Dim olApp As Object, olMail as Object

Set olApp = CreateObject("Outlook.Application")
Set olMail = olApp.CreateItem(0)

olMail.to =" test@server.de"
olMail.subject ="Test"
olMail.body = "Test"
olMail.display

End Sub

----------------------

Wenn ich das so lesen muss bekomme ich Augenschmerzen. Da ist ja noch nicht einmal eingerückt. M.E. besser wie folgt.

----------------------

Sub Test()

Dim olApp As Object

Set olApp = CreateObject("Outlook.Application")
      With olApp.CreateItem(0)
                       .To =" test@server.de"
                       .Subject ="Test"
                       .Body = "Test"
                       .Display
      End With

End Sub

----------------------

bei Antwort benachrichtigen
Olaf19 mumpel1 „Mit verkürzen meinte ich allerdings nicht code komprimieren ...“
Optionen

Deine zweite Version ^^ sieht auch für mich als Laien viel professioneller aus, und das hat nicht nur mit der Einrückung zu tun, sondern mit der Struktur insgesamt - die wirkt auf mich logischer.

Was mir allerdings auffällt: der Ausdruck "olMail" fehlt gänzlich. Braucht man den da nicht mehr?

CU
Olaf

Die Welt ist ein Jammertal ohne Musik. Doch zum Glueck gab es Bach, Beethoven, Haendel und Goethe (Helge Schneider)
bei Antwort benachrichtigen
mumpel1 Olaf19 „Deine zweite Version sieht auch für mich als Laien viel ...“
Optionen
Braucht man den da nicht mehr?

Ín VBA nicht. In VBA kann man auch über die Application (olApp) direkt auf das CreateItem-Objekt zugreifen. In Starbasic dagegen benötigt man beide Objekte. Aber wie ich weiter oben schon anmerkte, machen es selbst "Professionals" in VBA mit beiden Objekten.

Konntest Du Dein Problem den Filter betreffend inzwischen lösen?

bei Antwort benachrichtigen
Olaf19 mumpel1 „Ín VBA nicht. In VBA kann man auch über die Application ...“
Optionen
Konntest Du Dein Problem den Filter betreffend inzwischen lösen?       

Sagen wir es einmal so: er hat sich bis heute nicht wieder blicken lassen... falls er doch noch einmal "hereinschaut" - immer unvorhersehbar/nicht reproduzierbar - dann installiere ich mir Java auf meinem alten Mavericks-OS und lasse dein Skript laufen. Evtl. ist dann endgültig Schluss mit dem Filter.

THX
Olaf

Die Welt ist ein Jammertal ohne Musik. Doch zum Glueck gab es Bach, Beethoven, Haendel und Goethe (Helge Schneider)
bei Antwort benachrichtigen
mumpel1 Olaf19 „Oops... ich dachte: Zeilen Lines, Spalten Rows? Ist das bei ...“
Optionen

Noch eine kleine Anmerkung:

In VBA gibt es zwei unterschiedliche Objekte. Einmal "Sheets" und einmal "Worksheets". Zu letzteren zählen nur die normalen Kalkulationstabellen. Zu den "Sheets" zählen alle Blätter die in Excel möglich sind (Kalkulationstabellen, Dialogblätter, Diagrammblätter, die alten Macro-Arbeitsblätter aus Office 95 etc.). Daher ist es empfehleswert, wenn man "For Each Blatt in ThisWorkbook.Worksheets" schreibt, damit es nicht zu "Typen unverträglich"-Meldungen kommt, falls man auch mal ein Diagrammblatt verwendet (kein Worksheet, dadurch "Typen unverträglich" aufgrund der Deklaration "Dim Blatt As Worksheet").

bei Antwort benachrichtigen