Apache POI Filtern nach bestimmten Kriterium

Hey zusammen!

In meinem jetzigen Projekt erstelle ich eine Pivot Tabelle mit Hilfe von Apache POI.
Das funktioniert auch alles, jedoch möchte ich noch ein paar Optimierungen vornehmen.
Ich erstelle einen Filter aus einer Spalte, welche die vier Himmelrichtungen besitzt.
Mit der Funktion addReportFilter(); kann ich zwar manuell in Excel nach den Himmelsrichtungen sortieren,
jedoch möchte ich Im Code schon ein Standardwert wie bspw. "Süd" festlegen.
Immer wenn ich die Excel-Tabelle öffne, soll mir die Pivot-Tabelle also die gefilterten Daten nach "Süd" aufzeigen.
Ist das möglich und wenn ja wie?
Unten meinen bisherigen Code:
Code:
public static void CreatePivotTable() {

        
        String fileNameRead = Path.INTERN_PATH + "\\" + "Intern.xlsx";
        String fileNameWrite = Path.ERGEBNIS_PATH+ "\\" + "VTD.xlsx";
try {
            FileInputStream internExcelTable = new FileInputStream(new File(fileNameRaed));

            //Erzeugen eines Workbooks und der Basis-Tabelle
            XSSFWorkbook wb = new XSSFWorkbook(internExcelTable);

            //Erzeugen eines neuen Sheets
            XSSFSheet pivotSheet = wb.createSheet("My-Sheet");
            XSSFSheet sheet = wb.getSheetAt(0);

            //Festlegen des relevanten Bereiches für die Pivot-Tabelle
            AreaReference a = new AreaReference("A1:P721", SpreadsheetVersion.EXCEL2007);

            //Festlegen des Startbereiches der Pivot-Tabelle
            CellReference b = new CellReference("A1");

            //Erzeugen der Tabelle
            XSSFPivotTable pivotTable = pivotSheet.createPivotTable(a,b,sheet);          
           
            //Erzeugen der verschied. Filter
            pivotTable.addReportFilter(15);        //Filtern der Himmelsrichtungen
            pivotTable.addRowLabel(14);
            pivotTable.addRowLabel(1);
           
            pivotTable.addColumnLabel(DataConsolidateFunction.SUM, 5);
            pivotTable.addColumnLabel(DataConsolidateFunction.COUNT, 5);
           
           
            OutputStream os = new FileOutputStream(fileNameWrite);
           
            wb.write(os);
            internExcelTable.close();
           
        } catch (FileNotFoundException e) {
            e.printStackTrace();
           
        } catch (IOException e) {
            e.printStackTrace();
        }
    }
 
Zuletzt bearbeitet:

Nemo2478

Aktives Mitglied
Hallo Sweetmuffin98,

bitte, bitte, für die Augen von jedem, der Java benutzt, bitte camelCase deine Methodennamen richtig. Dies ist createPivotTable() und nicht CreatePivotTable(), wobei letzteres eine C# -Konvention ist.

Gebe deinem FileInputStream internExcelTable außerdem einen besseren Namen, um anzuzeigen, dass es sich um einen Stream handelt, z. B. sheetInputStream.

Ich empfehle, deine Methode mit einigen Argumenten zu versehen, um sie OOP-freundlicher und wiederverwendbarer zu machen.
Erstelle Argumente wie originalSheetId
übergeben es an wb.getSheetAt(originalSheetId);

Wenn du also das nächste Mal ein Blatt (payload) hast, das nicht das 0. (1.) Blatt ist, kannst du die Methode erneut verwenden.

Erläutere bitte auch, welche Ergebnisse du derzeit erhältst und welche Ergebnisse du erwartest. Ich gehe davon aus, dass du nach dieser ganzen Spalte filterst, sie aber auf etwas beschränken möchtest, das mit Süd markiert ist.

Lade das Excel-Beispiel-Blatt, das du in "Intern.xlsx", in deine Variable "fileNameRead", verwendest, hoch. Dies ist wahrscheinlich nicht die beste Art, deine Variable zu benennen.

Übrigens empfehle ich das Buch "Clean Code".


Grüße
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
M Apache Proxy Weiterleitung auf Tomcat funktioniert nicht wie gewünscht Allgemeine Java-Themen 1
T Logging mit org.apache.logging.log4j Allgemeine Java-Themen 1
E Ersetzen eines Bildes in der Kopfzeile eines Word-Docx-Dokuments mit Apache POI XWPF Allgemeine Java-Themen 0
H Apache fop -- welche Möglichkeit gibt es um den Fortschritt anzuzeigen (Progressbar) Allgemeine Java-Themen 5
H Apache fop - OutOfMemoryError Allgemeine Java-Themen 10
B Schnittstelle zwischen MySQL und Apache Allgemeine Java-Themen 8
O Wie kann ich in Apache POI (Excel Dateien schreiben) Datumszellen in Excel erzeugen Allgemeine Java-Themen 6
F Fehlermeldung: java.lang.NoClassDefFoundError: org/apache/commons/net/ntp/NTPUDPClient Allgemeine Java-Themen 6
N Apache POI/ neue Reihe in Excel mit einem Button Allgemeine Java-Themen 2
I Apache POI Bild in Word ersetzen Allgemeine Java-Themen 15
O xlsx Datei auslesen mit POI Apache liest keine LEERZELLEN Allgemeine Java-Themen 6
O xlsx Datei auslesen mit POI von Apache wirft seltsamen Fehler. Allgemeine Java-Themen 11
L APACHE POI PIVOT TABELLEN Allgemeine Java-Themen 4
L Apache POI Datenquelle Allgemeine Java-Themen 1
L JavaFX JavaFX Chart in Apache Poi Excel Datei Allgemeine Java-Themen 2
F Operationen/Methoden einen WebService im Browser mit Apache Axis aufrufen Allgemeine Java-Themen 4
F Input/Output NullPointerException, aber wieso? [Apache POI] Allgemeine Java-Themen 11
F Input/Output NullPointerException with Apache POI Allgemeine Java-Themen 7
E HILFE !! Exception in thread "main" java.lang.NoClassDefFoundError: org/apache/commons/io/FileUtils Allgemeine Java-Themen 4
J Apache POI - No external workbook with name Allgemeine Java-Themen 5
M Suche aktuelle Apache Poi Bibliothek zum Einbinden in mein Programm Allgemeine Java-Themen 2
MiMa Apache Tika: Warnmeldungen und Beispielcode Allgemeine Java-Themen 12
X Performance für Tomcat / Apache optimieren Allgemeine Java-Themen 2
G Ant Probleme bei einer Installation die Apache ant+ivy verwendet Allgemeine Java-Themen 14
FrittenFritze Swing Apache Batik - Zoom an einer bestimmten Stelle Allgemeine Java-Themen 4
K Apache poi: Deprecated getCellType Allgemeine Java-Themen 3
J Apache POI Excel- Blattschutz aufheben Allgemeine Java-Themen 2
I Apache POI Word Text einfügen Allgemeine Java-Themen 26
T Geschlossen: Apache POI - Excel einlesen Allgemeine Java-Themen 0
K Apache POI Word Tabelle Zellen verbinden Allgemeine Java-Themen 4
K Apache POI Word Tabelle Spaltenbreite festlegen Allgemeine Java-Themen 7
K Apache POI Word bestimmte Textstellen bearbeiten Allgemeine Java-Themen 1
R Apache POI XSSF Allgemeine Java-Themen 2
E Apache POI Powerpoint Verlinkungen ändern Allgemeine Java-Themen 4
T xls-Datei per Apache Commons CsvParser einlesen UTF-8 Zeichen russische Zeichen Allgemeine Java-Themen 2
zer0zer0 Best Practice apache common cli - optionen für hilfe ausblenden Allgemeine Java-Themen 5
S Eclipse Apache Camel FTP: Fehlerbehandlung, wie? Allgemeine Java-Themen 2
H Excel Datei einlesen mit Apache POI Allgemeine Java-Themen 1
GianaSisters Apache POI - Hyperlink erstellen Allgemeine Java-Themen 0
reibi Apache PDFBox Allgemeine Java-Themen 0
T Mit Apache Poi Daten aus einer Excel Tabelle kopieren und in Word einfügen Allgemeine Java-Themen 1
C Was bekomme ich eine Nullpointerexception? (Apache POI) Allgemeine Java-Themen 3
S OOP Apache Commons Math - Verwendung von Genetics - Wie werden Daten in Chromosomen gespeichert? Allgemeine Java-Themen 4
H Apache POI HSSF - Farbe/Rahmen etc. ohne Style-Vorlage? Allgemeine Java-Themen 4
E Apache POI-Datei lesen und umschreiben Allgemeine Java-Themen 8
G Input/Output Apache POI Excel Allgemeine Java-Themen 5
L Apache CLI: Args[] übergeben Allgemeine Java-Themen 3
P docx mit Apache POI auslesen, verändern und zurückschreiben Allgemeine Java-Themen 2
N Applet Apache Poi Wert einer Formel ausgeben Allgemeine Java-Themen 5
L Apache Common CLI Allgemeine Java-Themen 4
J Webstart (auf Apache) jnlp wird nicht geladen Allgemeine Java-Themen 2
S HTTP Apache HTTPClient Problem Allgemeine Java-Themen 4
R org.apache.http kompletter Internetausfall Allgemeine Java-Themen 7
J xlsx Dateien lesen OHNE apache POI Allgemeine Java-Themen 6
V Für was benötigt man Apache Common Allgemeine Java-Themen 3
V Apache POI Excel Datum auslesen Allgemeine Java-Themen 6
V Apache POI Excel Sheet auslesen Allgemeine Java-Themen 5
B Problem mit RegEs und org.apache.regexp.RE Allgemeine Java-Themen 5
T Apache POI Export EXCEL - [Zahlen-Werte] Allgemeine Java-Themen 1
Landei Erfahrungen mit JavaConfig oder Apache Commons Config? Allgemeine Java-Themen 3
J Apache FTPClient upload Allgemeine Java-Themen 3
A Apache License, Version 2.0 Allgemeine Java-Themen 7
S Bzip2 apache commons-compress Allgemeine Java-Themen 3
Chris81T Apache FOP 0.20-5 mit JNI von C++ Code aufrufen Allgemeine Java-Themen 8
C Apache POI(HSSF) Conditional Formatting Allgemeine Java-Themen 3
G Apache soll mit SVN zusammenarbeiten Allgemeine Java-Themen 3
E Apache Commons - PropertyConfiguration - Autosave Allgemeine Java-Themen 2
G Servlet über apache Tomcat ansprechen Allgemeine Java-Themen 6
alexpetri DirectoryWalker apache.commons Allgemeine Java-Themen 3
S Apache Commons Net geht nicht Allgemeine Java-Themen 5
G mit Apache-Jakarta-POI auch Graphiken aus Excel einlesen? Allgemeine Java-Themen 3
T Apache Lucene Allgemeine Java-Themen 2
Q Ant und org.apache.log4j.xml.DOMConfigurator Problem Allgemeine Java-Themen 2
M Java Webserver - Tomcat alleine oder zusammen mit Apache? Allgemeine Java-Themen 3
L Text filtern Allgemeine Java-Themen 1
looparda Liste filtern nach Prädikaten verschiedener Typen Allgemeine Java-Themen 3
ralfb1105 Blöcke aus Datei filtern/suchen und in neue Datei schreiben Allgemeine Java-Themen 10
N Streams wann .filtern? Allgemeine Java-Themen 2
B DomParser - Element filtern Allgemeine Java-Themen 4
N Java stream filtern. Allgemeine Java-Themen 19
J Jsoup Filtern Allgemeine Java-Themen 5
OlafHD Java Sätze filtern Allgemeine Java-Themen 1
N JTable filtern Allgemeine Java-Themen 3
H Speziellen Wert aus String filtern Allgemeine Java-Themen 4
F Medien filtern Allgemeine Java-Themen 4
J String filtern / XML-Code extrahieren Allgemeine Java-Themen 4
X Java String Regex - Sonderzeichen Filtern Allgemeine Java-Themen 5
J Zeichenketten-Liste filtern Allgemeine Java-Themen 6
S Eine Collection von Objekten mit LDAP Syntax filtern Allgemeine Java-Themen 5
D große Textdatei filtern Allgemeine Java-Themen 13
S Koordinaten aus einem Text filtern Allgemeine Java-Themen 11
M Nach bestimmter Namenskonvention filtern Allgemeine Java-Themen 2
J ArrayList Objekte anhand Propertywerte filtern Allgemeine Java-Themen 3
M Dateiinhalt filtern Allgemeine Java-Themen 9
S eine ip-adresse aus einem String filtern Allgemeine Java-Themen 5
N Array mit null Werten filtern Allgemeine Java-Themen 5
S 20.000 File filtern Allgemeine Java-Themen 11
G mit Pattern strings filtern ein kleines problemchen ;) Allgemeine Java-Themen 2
W Dateien filtern Allgemeine Java-Themen 7
märliprinz Sortieren und Filtern von Funktionen/Methoden Allgemeine Java-Themen 4

Ähnliche Java Themen

Neue Themen


Oben