Wie die Warnung in Excel mit Apache Poi in JAVA entfernen?

8

Ich verwende apache poi api , um ein Excel-Blatt in meiner Anwendung in Java zu erzeugen. Daten, die in Excel festgelegt sind, werden dynamisch mit dem Typ string ausgegeben. Für Spalte1 sind Werte alphanumerisch . Wenn ich Excel erzeuge, wird mir eine grüne Anzeige mit der Warnung "Als Text gespeichert als Nummer" oder "Textdatum mit zweistelliger Jahreszahl" in der Zelle angezeigt.

Ich möchte diese Warnung entfernen. Ich habe festgestellt, dass wir von Excel aus eine Zelle als 'Fehler ignorieren' markieren können, um die Warnung zu ignorieren.

Wie macht man das programmatisch oder gibt es eine andere Alternative, um diese Aufgabe zu erfüllen?

Ich habe auch einen Screenshot, der eine Warnung mit grüner Markierung zeigt.

Code:

%Vor%     
Charvee Shah 06.05.2014, 07:14
quelle

6 Antworten

2

Scheinbar ist dies momentan mit Apache POI nicht möglich. Es gibt eine Reihe von Fehlerberichten / RFEs zum Thema:

Ссылка

Ссылка

Ссылка

Das tatsächliche Attribut (das Attribut, das besagt, dass eine solche Warnung ignoriert werden soll) ist im persistenten Excel-Format vorhanden und wird pro Zelle aufgezeichnet. Es ist nur so, dass Apache POI es nicht freigibt, soweit ich das anhand der Fehlerberichte feststellen kann.

Um Ihnen eine Vorstellung davon zu geben, wie dies im xlsx-Format von Excel aussieht:

%Vor%

Ich habe irgendwo gelesen, dass dies nur in xlsx (dh OOXML) beibehalten wird, nicht in xls Format, was bedeutet, dass wenn das Apache POI-Team dies implementiert, es sich im XSSF-Paket befindet.

    
peterh 22.11.2015 10:11
quelle
1

Setze cell type like:

%Vor%

Für alphanumerische und Character -Zelltypen wird Cell.CELL_TYPE_STRING für die Anzahl, der Zelltyp ist CELL_TYPE_NUMERIC

Sie können mehr über den Zelltyp von Zelle und Dokumentation zu HSSFCell .

    
Vishrant 06.05.2014 07:34
quelle
0

Alt aber immer noch Es wird helfen Einige von .NET, die NPOI verwenden

Ich habe es mit

versucht %Vor%

was überhaupt nicht geholfen hat. aber der folgende Code wird funktionieren

%Vor%     
Tharun 05.06.2014 09:11
quelle
0

Ich hatte das gleiche Problem. Ich habe es gelöst, indem ich die Daten überprüft habe, ob es ein Integer / Float ist, und die Bedingung (CELL_TYPE) entsprechend setze. Finden Sie den Code Snippet:

%Vor%

Hier sind Daten ein String aus dem Array der Liste aus der Datenquelle (Excel / CSV) Dies löste die grüne Warnung.

    
Shambhavi Sharma 19.02.2015 08:04
quelle
0

Für mich funktionierte keine der obigen Lösungen, aber am Ende wurden die Warnungen mit einer etwas verschachtelten Problemumgehung beseitigt: Schreiben der Werte als solche Formeln.

%Vor%

Glauben Sie nicht, dass es immer eine gute Lösung ist, aber in meinem Fall werden die Werte der Ausgabedatei niemals geändert. Aber es könnte jemandem helfen.

Ich benutze Version 3.14 von Apache POI, falls es einen Unterschied macht (ich habe ein paar verschiedene Versionen vor der Problemumgehung ausprobiert, ohne Wirkung).

    
lrnzcig 23.08.2016 10:13
quelle

Tags und Links