Excel-bestand gegenereerd met ExcelLibrary kan niet worden geopend

Ik gebruik excelLibrary om Excel-bestanden programmatisch te maken, maar er treedt een fout op met de bestandsindeling wanneer ik probeer om de gegenereerde bestanden in Microsoft Office Excel te openen.

Ik heb dit gemeld gezien maar er is nog steeds geen antwoord over het.

Ik gebruik Office 2010 en ik kan elk ander .xls-bestand (97-2003-bestandsformaat) openen, maar degenen die zijn gemaakt met ExcelLibrary. Ik heb ook Open Office geprobeerd en kan het gegenereerde bestand nog steeds niet openen. Ik heb niet geprobeerd ze te openen in Office 97-2003.

Probeer de voorbeeldcode om de fout te reproduceren.

Heeft iemand de bibliotheek gevonden en niet tegen dit probleem aangelopen?

12
Weet u niet zeker van de fout, maar de bibliotheek heeft geen ondersteuning voor 2007/2010, misschien kijkt u naar iets nieuws? netoffice.codeplex.com
toegevoegd de auteur Kane, de bron
Ik heb een oplossing gevonden, zie mijn nieuwe antwoord.
toegevoegd de auteur aleroot, de bron
Probeer EPPlus . Het vereiste .NET 3.5 maar is geweldig en zeer krachtig. Het maakt gebruik van OpenOfficeXml.
toegevoegd de auteur Leslie Godwin, de bron

3 antwoord

Een oplossing gevonden:

string filename = "c:\Test.xls";
Workbook workbook = new Workbook();
Worksheet sheet = new Worksheet("Test")
workbook.Worksheets.Add(sheet)

for(int i = 0;i < 100; i++)
      sheet.Cells[i,0] = new Cell("");

workbook.save(filename);

Het probleem is dat Office 2010 het niet ondersteunt, tenzij er zijn   100 of meer gevulde cellen.

     

Mijn werk bestond uit het hebben van 100 cellen in een for-lus met "".   Op die manier krijgt hij 100 cellen en dan werkt het prima.

Reference : here

39
toegevoegd
+1 Geweldig! Ik was hier naar op zoek, dank je!
toegevoegd de auteur Somebody, de bron
Bedankt man .. Je hebt het leven van 3 mensen gered
toegevoegd de auteur Sayka, de bron
Dat werkte! Maar de limiet van 256 kolommen is gewoon te restrictief (Excel 97?) Jammer, ik geef echt de voorkeur aan een LGPL-licentie boven Apache. NPOI hieronder proberen.
toegevoegd de auteur user922020, de bron

Helaas excel bestand geëxporteerd met ExcelLibrary zijn niet compatibel met Office 2010 Excel, dit is een al gemeld probleem, maar het lijkt erop dat de ontwikkeling van de bibliotheek niet langer actief is.

Ik ben overgeschakeld naar NPOI .

5
toegevoegd
+1 voor NPOI, wees je ervan bewust dat de NPOI API behoorlijk breed van opzet is, en dat je constant * dingen moet maken, vooral als het gaat om formatteren. Ook zijn hun naamafkortingen echt verschrikkelijk, waardoor intellisense bijna nutteloos is totdat je je herinnert dat het ding dat je wilt "HSSF" wordt genoemd.
toegevoegd de auteur Roman Starkov, de bron
Ja. Probeer EPPlus . Het vereiste .NET 3.5 maar is geweldig en zeer krachtig. Het maakt gebruik van OpenOfficeXml.
toegevoegd de auteur Leslie Godwin, de bron

Omdat de bladnaam niet goed is opgegeven, gooide het die fout weg.

Zodra we het blad een naam geven, zal het correct werken.

1
toegevoegd