❤️ Helfen Sie noch heute, unser LibreOffice Forum zu erhalten! ❤️
Unterstützen Sie das LibreOffice-Forum und helfen Sie uns, unser Ziel für 2025 zu erreichen!

🍀 Jeder Beitrag zählt – vielen Dank für Ihre Unterstützung!🍀
Mit Ihrer Spende sichern Sie den Fortbestand, den Ausbau und die laufenden Kosten dieses Forums. 🌱


❤️ DANKE >> << DANKE ❤️

>> Dank Ihrer Unterstützung -> Keine Werbung für alle registrierten LibreOffice-Forum User! <<
🤗 Als Dankeschön werden Sie im Forum als LO-SUPPORTER gekennzeichnet. 🤗

Filter als Abfrage in der Tabelle

CALC ist die Tabellenkalkulation, die Sie immer wollten.
Antworten
OSEinkauf
Beiträge: 3
Registriert: Mo 21. Jul 2014, 16:28

Filter als Abfrage in der Tabelle

Beitrag von OSEinkauf » Mo 21. Jul 2014, 17:05

Hallo,

vielleicht mag mir jemand helfen. Ich suche schon recht lange im Forum nach ähnlichen Problemen, habe aber leider nicht das richtige gefunden.
Eigentlich scheint mein Problem ganz einfach.

Ich möchte eine Abfrage wie ein Standardfilter erstellen per Knopfdruck ohne ständig den Filter einstellen zu müssen. Per Makro funktioniert das wohl offenbar nicht.
Vorhanden sind 2-4 Suchkriterien als ODER Funktion in einer Spalte.

zur besseren Erläuterung :

Spalte A / Spalte B
Teile / Werk
Artikel A / 1,B
Artikel B / 1,2
Artikel C / 2
Artikel D / K
Artikel E / 3

Filterkritierum z.B. Zeige mir alle Zeilen mit 1 oder K
oder zeige mir alle Zeilen mit 2 oder K
oder Zeige mit alle Zeilen mit 3 oder K oder B
Das Filterkriterium befindet sich dabei nur in einer Spalte, hier im Beispiel in Spalte B Werk.

Diese Filterung möchte ich denn jeweils hinter einem Button hinterlegen, sodass ich jedes Werk sofort per Knopfdruck anzeigen lassen kann.

Hoffentlich habe ich jetzt an alles gedacht. Wenn ich was vergessen oder unverständlich erklärt habe, bitte ich das zu entschuldigen.

Über eine Hilfe würde ich mich sehr freuen.

Danke.

OS

Benutzeravatar
OttoZ
* LO-Experte *
Beiträge: 386
Registriert: Sa 3. Mär 2012, 13:24

Re: Filter als Abfrage in der Tabelle

Beitrag von OttoZ » Mi 23. Jul 2014, 13:10

... eine Beispieltabelle könnte mehr sagen als 181 Worte
und potentiellen Helfern den Aufwand verringern
glücklich mit LinuxMintmate64 - & LibreOffice

OSEinkauf
Beiträge: 3
Registriert: Mo 21. Jul 2014, 16:28

Re: Filter als Abfrage in der Tabelle

Beitrag von OSEinkauf » Mi 23. Jul 2014, 16:18

Hallo,

vielen Dank für die Antwort. Ich habe jetzt eine kleine Beispieldatei angefügt.

Die Filterung dazu soll durch Buttons ausgeführt werden.

Button 1 zum Beispiel Werk 1 = Filtere nach 1 oder K
Button 2 = Filtere nach 2 oder K
Button 3 = Filtere nach 3 oder K
Button 4 = Filtere nach 3
etc..

Es sind auch Filterungen mit 4 Kriterien erforderlich.
Danke
Dateianhänge
Ersatzteilliste.ods
(12.88 KiB) 125-mal heruntergeladen

OSEinkauf
Beiträge: 3
Registriert: Mo 21. Jul 2014, 16:28

Re: Filter als Abfrage in der Tabelle

Beitrag von OSEinkauf » Do 7. Aug 2014, 08:39

Hallo,

ich versuche mich an die Lösung des Problems selber heranzutasten, weil ich gerne weiterkommen möchte. Da mir die Kenntnisse fehlen, ist das nur ein Ausprobieren und Herumspielen.
Folgendes habe ich in einem früheren Beitrag gefunden, was vielleicht weiter helfen könnte.
Allerdings vergleiche ich damit die komplette Zelle. Ich möchte aber nur nach einer bestimmte Zahl oder Zahlenfolge filtern, die in den Zellen vorhanden sein könnte und nicht den komplette Zelleninhalt vergleichen, und dann auch nur in einer bestimmten Spalte. Ich habe mal gelesen, dass es dazu auch unterschiedliche Filteroperatoren gibt. Aber welche genau, keine Ahnung??


REM ***** BASIC *****
'Die Spalten, in denen gefiltert werden soll, im Spaltenkopf markieren, dann unter Daten/Bereich festlegen ... einen Bereich zuordnen. Hier $Tabelle1.$A$1:$C$1048576
'das Makro "S_apply_autofilter" auf dem Tabellenreiter der Tabelle1 (rechte Maustaste) dem Tabellenereignis "Inhalt geändert" zuordnen
'das Makro "S_apply_autofilter_on_Loading" unter Extras/Anpassen/Ereignisse dem Ereignis "Ansicht wurde erzeugt" zuordnen.
'ggf. hier den Namen der Tabelle (momentan Tabelle1), der Filterzelle (momentan F1) und den Spaltenindex (A=0, B=1, C=2 ... usw.)hinter ".field =" anpassen, Speichern

sub S_apply_autofilter(ocell)
if ocell.AbsoluteName = "$Tabelle1.$F$1" then 'Hier Tabelle und Steuerzelle eingeben
if ocell.Type = com.sun.star.table.CellContentType.EMPTY then
S_remove_autofilter
else
dim aFilterFields(0) as new com.sun.star.sheet.TableFilterField
with aFilterFields(0)
.field = 2 'Spalte C wird gefiltert
.Operator = com.sun.star.sheet.FilterOperator.EQUAL
.StringValue = ocell.string
end with
odatabaserange = thiscomponent.databaseranges(0)
oFilterDescriptor = odatabaserange.FilterDescriptor
oFilterDescriptor.setFilterFields(aFilterFields)
odatabaserange.refresh
endif
endif
end sub

sub S_apply_autofilter_on_Loading
ocell = thiscomponent.sheets.getbyname("Tabelle1").getcellrangebyname("F1")' Hier Tabelle und die Steuerzelle eingeben
S_apply_autofilter(ocell)
end Sub

Sub S_remove_autofilter
odatabaserange = thiscomponent.databaseranges(0)
oFilterDescriptor = odatabaserange.FilterDescriptor
oFilterDescriptor.setFilterFields(array())
odatabaserange.referredcells.Rows.Isvisible = True
odatabaserange.refresh
end sub


Wenn die Filterung so funktioniert, wäre der nächste Schritt, den Filterbefehl auf einen vordefinierten Button zu legen.

Für einen Tipp wäre ich dankbar.
Danke.

Benutzeravatar
lorbass
* LO-Experte *
Beiträge: 627
Registriert: Mo 25. Apr 2011, 18:17

Re: Filter als Abfrage in der Tabelle

Beitrag von lorbass » Do 7. Aug 2014, 13:30

OSEinkauf hat geschrieben:Über eine Hilfe würde ich mich sehr freuen.
Wende dich mit der Frage an den „zuständigen“ Bereich Bereich LibreOffice Programmierung. Den Programmcode solltest du immer in die dafür vorgesehenen [​code] [​/code] Tags einschließen.

Gruß
lorbass

F3K Total
* LO-Experte *
Beiträge: 2501
Registriert: So 10. Apr 2011, 10:10

Re: Filter als Abfrage in der Tabelle

Beitrag von F3K Total » Do 7. Aug 2014, 16:10

Hi,
habe was gebastelt. Mit Makro. Verwendet wird der Spezialfilter.
Wenn du auf die Buttons die Filterkriterien schreibst, durch Komma getrennt, ohne Leerzeichen, dann den Cursor innerhalb der zu filternden Daten platzierst, kannst Du per Buttonclick filtern. Geht momentan bis zu 6 Filterkriterien und bis Zeile 500.
Wenn du mehr Buttons brauchst, einfach kopieren und die Beschriftung anpassen.

Gruß R
Dateianhänge
Ersatzteilliste.ods
(34.35 KiB) 189-mal heruntergeladen
Windows 11: AOO, LO Linux Mint: AOO, LO


An alle, die das LibreOffice-Forum gern nutzen und unterstützen wollen:


Bitte helfen Sie uns mit 7 Euro pro Monat.
Durch Ihren Beitrag tragen Sie dazu bei, unsere laufenden Kosten für die kommenden Monate zu decken.
Unkompliziert per Kreditkarte oder PayPal.
Als ein kleines Dankeschön werden Sie im LO-Forum als SUPPORTER gekennzeichnet.



Antworten