Tabelle nach einem Wort in der Zelle filtern
Moderator: Moderatoren
-
- **
- Beiträge: 20
- Registriert: Do, 28.06.2018 14:07
Tabelle nach einem Wort in der Zelle filtern
Einen wunderschönen Tag Zusammen,
ich hoffe mir kann jemand helfen. Folgendes Problem versuche ich zu lösen.
Ich habe in mehreren Spalten und Zeilen verschiedene Inhalte. Nun möchte ich
gerne erreichen, dass ich nach einem Wort in der Zeile suchen kann und er mir
die Tabelle so filtert, dass nur noch die Zeilen mit dem gesuchten Wort erscheinen.
Das Problem ist, dass der Filter momentan dann nur funktioniert, wenn der genaue
Zellinhalt, beim Suchbegriff eingegeben worden ist, aber ich möchte auch die Suche
nach dem Schlüsselwort mit einbinden.
Select Case Op
Case "<"
Filterfeld.operator = com.sun.star.sheet.FilterOperator.LESS
Wert = Right(Wert,Len(Wert)-1)
Filterfeld.StringValue = Wert
Case ">"
Filterfeld.operator = com.sun.star.sheet.FilterOperator.GREATER
Wert = Right(Wert,Len(Wert)-1)
Filterfeld.StringValue = Wert
Case Else
Filterfeld.operator = com.sun.star.sheet.FilterOperator.EQUAL
Kann mir jemand dabei helfen?
Grüßle Defe
ich hoffe mir kann jemand helfen. Folgendes Problem versuche ich zu lösen.
Ich habe in mehreren Spalten und Zeilen verschiedene Inhalte. Nun möchte ich
gerne erreichen, dass ich nach einem Wort in der Zeile suchen kann und er mir
die Tabelle so filtert, dass nur noch die Zeilen mit dem gesuchten Wort erscheinen.
Das Problem ist, dass der Filter momentan dann nur funktioniert, wenn der genaue
Zellinhalt, beim Suchbegriff eingegeben worden ist, aber ich möchte auch die Suche
nach dem Schlüsselwort mit einbinden.
Select Case Op
Case "<"
Filterfeld.operator = com.sun.star.sheet.FilterOperator.LESS
Wert = Right(Wert,Len(Wert)-1)
Filterfeld.StringValue = Wert
Case ">"
Filterfeld.operator = com.sun.star.sheet.FilterOperator.GREATER
Wert = Right(Wert,Len(Wert)-1)
Filterfeld.StringValue = Wert
Case Else
Filterfeld.operator = com.sun.star.sheet.FilterOperator.EQUAL
Kann mir jemand dabei helfen?
Grüßle Defe
Re: Tabelle nach einem Wort in der Zelle filtern
Hallo,
es gibt auch noch die Operatorengruppe FilterOperator2 und dabei auch
Damit lassen sich Zellen filtern die einen gewissen (Teil-)String enthalten.
Wenn du auf eine Tabelle mal den Standardfilter anwendest findest du dort den Operator "enthält".
es gibt auch noch die Operatorengruppe FilterOperator2 und dabei auch
Code: Alles auswählen
com.sun.star.sheet.FilterOperator2.CONTAINS
Wenn du auf eine Tabelle mal den Standardfilter anwendest findest du dort den Operator "enthält".
Gruß,
mikeleb
mikeleb
-
- **
- Beiträge: 20
- Registriert: Do, 28.06.2018 14:07
Re: Tabelle nach einem Wort in der Zelle filtern
Guten Morgen,
vielen Dank, dass du dich meinem Problem annimmst.
so bewandert. Habe für das Makros echt Blut und Wasser geschwitzt...und bin schon froh, dass er die Tabelle durchsucht.
Kannst du mir das erklären, wie ich da weitermachen muss?
Gruß Defe
vielen Dank, dass du dich meinem Problem annimmst.
Das verstehe ich leider nicht ganz so. Wo setze ich den Standardfilter? und den Operator mit "enthält".? Bin leider nichtWenn du auf eine Tabelle mal den Standardfilter anwendest findest du dort den Operator "enthält".?
so bewandert. Habe für das Makros echt Blut und Wasser geschwitzt...und bin schon froh, dass er die Tabelle durchsucht.
Kannst du mir das erklären, wie ich da weitermachen muss?
Gruß Defe
Re: Tabelle nach einem Wort in der Zelle filtern
Hallo,
Gruß
---------------------------------------------------------
Win.10 Prof. 64-bit, AOO 4.1.7, LO 6.3.4 (x64)
---------------------------------------------------------
Win.10 Prof. 64-bit, AOO 4.1.7, LO 6.3.4 (x64)
-
- **
- Beiträge: 20
- Registriert: Do, 28.06.2018 14:07
Re: Tabelle nach einem Wort in der Zelle filtern
Hallo
ich habe jetzt dank Nikki die Filtereinstellung gefunden, allerdings
weiß ich trotzdem nicht weiter. Wie muss ich dass in meinem Makro
einbauen und wie muss ich den Filter setzen?
Bitte, bitte helft mir
Gruß Defe
ich habe jetzt dank Nikki die Filtereinstellung gefunden, allerdings
weiß ich trotzdem nicht weiter. Wie muss ich dass in meinem Makro
einbauen und wie muss ich den Filter setzen?
Bitte, bitte helft mir
Gruß Defe
Re: Tabelle nach einem Wort in der Zelle filtern
Hallo,
auf welchem Bereich, auf welcher Tabelle willst du den Filter ansetzen? Hast du eventuell einen Datenbankbereich definiert?
auf welchem Bereich, auf welcher Tabelle willst du den Filter ansetzen? Hast du eventuell einen Datenbankbereich definiert?
Gruß,
mikeleb
mikeleb
Re: Tabelle nach einem Wort in der Zelle filtern
Hallo,
angenommen, du möchtest auf dem Tabellenblatt 1 den Bereich A1:B25 danach filtern, ob in die Zellen der Spalte B ein bestimmtes Wort enthalten.
angenommen, du möchtest auf dem Tabellenblatt 1 den Bereich A1:B25 danach filtern, ob in die Zellen der Spalte B ein bestimmtes Wort enthalten.
Code: Alles auswählen
Sub Filter
odoc=thiscomponent
'Bereich der gefiltert werden soll
quelle=odoc.sheets(1).getcellrangebyname("A1:B25")
'Erstellen des Filters
oFilter = quelle.createFilterDescriptor(True)
'Überschriftenzeile gibt es
oFilter.ContainsHeader=true
'Filterkriterium
aFilterFields = DimArray(0)
aFilterFields(0) = new com.sun.star.sheet.TableFilterField2
aFilterFields(0).Connection = com.sun.star.sheet.FilterConnection.AND
aFilterFields(0).field=1
aFilterFields(0).IsNumeric = false
aFilterFields(0).Operator = com.sun.star.sheet.FilterOperator2.CONTAINS
aFilterFields(0).stringvalue="abc"
oFilter.setFilterFields2(aFilterFields)
'Filtern
quelle.filter(oFilter)
End Sub
Gruß,
mikeleb
mikeleb
-
- **
- Beiträge: 20
- Registriert: Do, 28.06.2018 14:07
Re: Tabelle nach einem Wort in der Zelle filtern
Hallo,
ich habe jetzt mal eine kleine Versuchsdatei hochgeladen. Im Zellenbereich A3:K6
kann gefiltert werden. Allerdings wäre es mir wichtig, dass der Filterbereich sich
eben auch auf das Schlüsselwort bezieht.
Vielen Dank Mikeleb,für das Makro, allerdings bin ich wahrscheinlich zu blöd, dein Makro
einzubauen. Kannst du mir da noch einmal unter die Arme greifen.
Gruß Defe
ich habe jetzt mal eine kleine Versuchsdatei hochgeladen. Im Zellenbereich A3:K6
kann gefiltert werden. Allerdings wäre es mir wichtig, dass der Filterbereich sich
eben auch auf das Schlüsselwort bezieht.
Vielen Dank Mikeleb,für das Makro, allerdings bin ich wahrscheinlich zu blöd, dein Makro
einzubauen. Kannst du mir da noch einmal unter die Arme greifen.
Gruß Defe
- Dateianhänge
-
- test_Lagerbestand.ods
- (16.32 KiB) 204-mal heruntergeladen
Re: Tabelle nach einem Wort in der Zelle filtern
Hallo,
dafür brauchst du gar kein Makro. Du hast ja schon einen Spezialfilter aufgesetzt. Ich habe den Filterkriterienbereich etwas erweitert und beim Filter die Option "Reguläre Ausdrücke" aktiviert. Damit hast du die Möglichkeit nach Zellen zu Filtern, die eine Wortgruppe enthalten. Dazu musst du als Filterkriterium nur .* vor und hinter die Wortgruppe setzen.
Weiteres zum Spezialfilter liest du hier: http://www.ooowiki.de/SpezialFilter.html
Bleibt noch die Aktualisierung der Daten nach dem Ändern der Filterkriterien. "Per Hand" würdest du eine der Zellen im Datenbereich anwählen udn dann im Menü ->Daten->Bereich aktualisieren wählen. Man kann aber auch bei der Schaltfläche als Aktion "Dokument/Webseite öffnen" einstellen und bei URL ".uno:DataAreaRefresh" und schon passiert beim Klick auf die Schaltfläche die Filterei.
dafür brauchst du gar kein Makro. Du hast ja schon einen Spezialfilter aufgesetzt. Ich habe den Filterkriterienbereich etwas erweitert und beim Filter die Option "Reguläre Ausdrücke" aktiviert. Damit hast du die Möglichkeit nach Zellen zu Filtern, die eine Wortgruppe enthalten. Dazu musst du als Filterkriterium nur .* vor und hinter die Wortgruppe setzen.
Weiteres zum Spezialfilter liest du hier: http://www.ooowiki.de/SpezialFilter.html
Bleibt noch die Aktualisierung der Daten nach dem Ändern der Filterkriterien. "Per Hand" würdest du eine der Zellen im Datenbereich anwählen udn dann im Menü ->Daten->Bereich aktualisieren wählen. Man kann aber auch bei der Schaltfläche als Aktion "Dokument/Webseite öffnen" einstellen und bei URL ".uno:DataAreaRefresh" und schon passiert beim Klick auf die Schaltfläche die Filterei.
- Dateianhänge
-
- test_Lagerbestand_neu.ods
- (22.87 KiB) 302-mal heruntergeladen
Gruß,
mikeleb
mikeleb
-
- **
- Beiträge: 20
- Registriert: Do, 28.06.2018 14:07
GELÖST: Tabelle nach einem Wort in der Zelle filtern
Guten Morgen Mikeleb,
vielen Dank für deine Antwort. Das klappt hervorragend.
Haste echt toll hinbekommen.....vielen lieben Dank.
Gruß Defe
Nun kann ich den Thread auf gelöst setzen
vielen Dank für deine Antwort. Das klappt hervorragend.
Haste echt toll hinbekommen.....vielen lieben Dank.
Gruß Defe
Nun kann ich den Thread auf gelöst setzen