🙏 Helfen Sie jetzt mit, unser LibreOffice Forum zu erhalten! 🙏
Mit Ihrer Spende sichern Sie den Fortbestand, den Ausbau und die laufenden Kosten dieses Forums. 🌱

🍀 Jeder Beitrag zählt – vielen Dank für Ihre Unterstützung!🍀

❤️ 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. 🤗

[Gelöst] makro: Mehrere Filter gleichzeitig ausführen

Alles zur Programmierung im LibreOffice.
genie
Beiträge: 25
Registriert: Di 20. Nov 2018, 00:37

[Gelöst] makro: Mehrere Filter gleichzeitig ausführen

Beitrag von genie » Mi 28. Nov 2018, 19:44

Grüße ,

      Ich habe eine Berichtsdatei mit automatischen Filtern in Arbeitsblatt 1; Filter werden von Spalte "A" bis Spalte "AZ" in Zeile 1 eingefügt .

      Ich brauche ein Makro, um mehrere Spalten gleichzeitig zu filtern, dh das Makro muss "7" ausführen, wobei sieben Filter in der Reihenfolge von links nach rechts aufeinander folgen .

      Bei jedem Filter, der nacheinander von links nach rechts ausgeführt wird, verringert sich die Anzahl der Zeilen, die im Bericht aus Arbeitsblatt 1 angezeigt werden .

      Ich habe versucht, den Code anzupassen: Sub FiltrarDatos6 () oder Sub FiltrarDatos8 () des folgenden Link : https://wiki.openoffice.org/wiki/ES/Man ... trar_datos

      Ich habe keine positiven Ergebnisse mit Link-Codes


umarmt Freunde
Zuletzt geändert von genie am Sa 1. Dez 2018, 17:06, insgesamt 1-mal geändert.
LibreOffice 5.4.4.2 - Windows 7

mikele
* LO-Experte *
Beiträge: 1932
Registriert: Mo 1. Aug 2011, 20:51

Re: makro: Mehrere Filter gleichzeitig ausführen

Beitrag von mikele » Mi 28. Nov 2018, 21:10

Hallo,
suchst du ernsthaft Hilfe? Bitte eine Beispieldatei.
Gruß,
mikele

genie
Beiträge: 25
Registriert: Di 20. Nov 2018, 00:37

Re: makro: Mehrere Filter gleichzeitig ausführen

Beitrag von genie » Do 29. Nov 2018, 04:31

Grüße mikele ,

                Ich möchte mich für die Hilfe bedanken .

folgt der angehängten Datei, im Arbeitsblatt 1 befindet sich ein Modell mit vier "4" -Filtern, die nacheinander in der Reihenfolge von links nach rechts laufen .

         Regeln für Filter :

         Filter 1: Wert größer oder gleich 7 [> = 7]

         Filter 2: Wert kleiner oder gleich 6 [<= 6]

         Filter 3: Wert größer als 2 [> 2]

         Filter 4: Wert größer als 7 [> 7]


Hinweis :

Ich habe den automatischen Filter manuell angewendet, um als Modell zu dienen

müssen diesen Makrobetrieb automatisieren


Umarmungen
Dateianhänge
mehrere automatische filter.ods
(12.18 KiB) 225-mal heruntergeladen
LibreOffice 5.4.4.2 - Windows 7

mikele
* LO-Experte *
Beiträge: 1932
Registriert: Mo 1. Aug 2011, 20:51

Re: makro: Mehrere Filter gleichzeitig ausführen

Beitrag von mikele » Do 29. Nov 2018, 12:18

Hallo,
dafür würde auch der Standardfilter reichen.
Als Makro funktioniert das Beispiel Sub FiltrarDatos7() aus deiner Quelle schon ganz gut.
Es müssen nur die 7 Spalten deines Bereiches als Filterfelder angegeben werden.

Code: Alles auswählen

mCamposFiltro(0).Field = 1
         mCamposFiltro(0).Operator = com.sun.star.sheet.FilterOperator.GREATER_EQUAL
         mCamposFiltro(0).IsNumeric = True
         mCamposFiltro(0).NumericValue = 30
         'Agregamos la segunda condición a otro campo
         mCamposFiltro(1).Field = 2
         mCamposFiltro(1).Connection = com.sun.star.sheet.FilterConnection.AND
         mCamposFiltro(1).Operator = com.sun.star.sheet.FilterOperator.LESS_EQUAL
         mCamposFiltro(1).IsNumeric = True
         mCamposFiltro(1).NumericValue = 35
         mCamposFiltro(1).Field = 3
         ...
         
         
Gruß,
mikele

genie
Beiträge: 25
Registriert: Di 20. Nov 2018, 00:37

Re: makro: Mehrere Filter gleichzeitig ausführen

Beitrag von genie » Do 29. Nov 2018, 13:29

Hallo mikele ,

     Ich habe versucht, ein Sub-FilterData7() in der von Ihnen angeforderten Axexo-Datei zu verwenden, aber das Sub-FilterData7() funktionierte nicht richtig .


Umarmungen
LibreOffice 5.4.4.2 - Windows 7

mikele
* LO-Experte *
Beiträge: 1932
Registriert: Mo 1. Aug 2011, 20:51

Re: makro: Mehrere Filter gleichzeitig ausführen

Beitrag von mikele » Do 29. Nov 2018, 13:42

Hallo,
was funktioniert nicht?
Dateianhänge
mehrere automatische filter makro.ods
(15.7 KiB) 186-mal heruntergeladen
Gruß,
mikele

genie
Beiträge: 25
Registriert: Di 20. Nov 2018, 00:37

Re: makro: Mehrere Filter gleichzeitig ausführen

Beitrag von genie » Do 29. Nov 2018, 17:09

mikele ,

Ich habe die Tests mit der Datei durchgeführt, die Sie angehängt haben, ich habe einen Button in die Datei eingefügt, ich habe den Button gedrückt und dann haben die Filter mit den Zahlen richtig funktioniert .

dann änderte ich die "D" -Spalte mit Zahlen in eine Spalte mit Namen, und dann drückte ich die Taste erneut, um zu filtern, und der korrekte Filter funktionierte nicht .

Beobachtung :

folgt der Anhangsdatei mit der Änderung, Sie können das neue Makro prüfen Sub-FilterData7() .

Umarmungen
Dateianhänge
mehrere automatische filter makro.ods
(20.29 KiB) 179-mal heruntergeladen
LibreOffice 5.4.4.2 - Windows 7

mikele
* LO-Experte *
Beiträge: 1932
Registriert: Mo 1. Aug 2011, 20:51

Re: makro: Mehrere Filter gleichzeitig ausführen

Beitrag von mikele » Do 29. Nov 2018, 17:59

Hallo,
du willst 3 Filterbedingungen definieren. Daher

Code: Alles auswählen

Dim mCamposFiltro(2) As New com.sun.star.sheet.TableFilterField
Die Zählung beginnt bei 0.
Das Löschen des Filters geht ebenfalls direkt.
Dateianhänge
mehrere automatische filter makro 2.ods
(21.39 KiB) 193-mal heruntergeladen
Gruß,
mikele

genie
Beiträge: 25
Registriert: Di 20. Nov 2018, 00:37

Re: makro: Mehrere Filter gleichzeitig ausführen

Beitrag von genie » Fr 30. Nov 2018, 00:34

mikele ,

sehr gutes Makro, arbeitet bereits entsprechend der Anfrage im Thema .

Ich möchte die Nachfrage nach einer weiteren Sache nutzen, da der BASIC Code geschrieben wird, wenn im Filter(1) nach mehreren Kriterien gefiltert werden soll : mCamposFiltro(1).StringValue = Array ( "joão" , "juca", "carlos" )

Wie lautet der Code, um das Field(1) mit dem Array zu filtern ?

Ich habe es versucht, es gelang mir nicht .

Umarmungen
LibreOffice 5.4.4.2 - Windows 7

mikele
* LO-Experte *
Beiträge: 1932
Registriert: Mo 1. Aug 2011, 20:51

Re: makro: Mehrere Filter gleichzeitig ausführen

Beitrag von mikele » Sa 1. Dez 2018, 13:42

Hallo,
am einfachsten nutzt du wie in Sub FiltrarDatos9() einen regulären Ausdruck.
Also folgende Zeilen ergänzen:

Code: Alles auswählen

oDesFiltro.UseRegularExpressions = True
und

Code: Alles auswählen

mCamposFiltro(1).StringValue = "joão|juca|carlos" 
Gruß,
mikele


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