🍀 Das LibreOffice Forum braucht HEUTE Ihre Hilfe! 🍀
❤️ Spenden Sie jetzt und sichern Sie die Zukunft unseres LibreOffice-Forums ❤️
Ihre Spende hilft, die Community offen, werbefrei (bei Registrierung) und lebendig zu halten. Vielen lieben Dank!

🙏 DANKE >> << DANKE 🙏

>> Das LibreOffice-Forum lebt von Ihnen – und von vielen Experten, die freiwillig und kostenlos ihr Wissen teilen.<<
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) 140-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: 2515
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) 206-mal heruntergeladen
Windows 11: AOO, LO Linux Mint: AOO, LO


An alle, die das LibreOffice-Forum gern nutzen:
Bitte beteiligen Sie sich mit 7 Euro pro Monat und helfen uns bei unserem Budget für das laufende.
Einfach per Kreditkarte oder PayPal. Als Dankeschön werden Sie im Forum als LO-SUPPORTER gekennzeichnet.



❤️ Vielen lieben Dank für Ihre Unterstützung ❤️

Antworten