2009-08-13 5 views
0

Ich habe eine .xlsx mit openxml erstellt. Ich bin nicht in der Lage, diese Datei in Office 2003 zu öffnen .. Ich habe auch versucht, mit Compatibility Pack, aber immer noch die Datei nicht geöffnet. Was kann getan werden, wenn ich .xlsx generieren muss, das auch in Office 2003 geöffnet werden kann.Eröffnung .xlsx im Büro 2003

-Code i zu erzeugen bin mit .xlsx ist:

public static void HelloWorldXlsx(string docName) 
{ 
    SpreadsheetDocument package = SpreadsheetDocument.Create(docName, SpreadsheetDocumentType.Workbook); 
    package.AddWorkbookPart(); 
    package.WorkbookPart.Workbook = new Workbook(); 
    WorksheetPart wspart = package.WorkbookPart.AddNewPart<WorksheetPart>(); 

    Cell cell = new Cell(); 
    cell.DataType = CellValues.InlineString; 
    cell.InlineString = new InlineString(new DocumentFormat.OpenXml.Spreadsheet.Text("Hello World!")); 

    wspart.Worksheet = new Worksheet(new SheetData(new Row(cell))); 

    wspart.Worksheet.Save(); 
    package.WorkbookPart.Workbook.AppendChild(new Sheets()); 
    Sheet sheet = new Sheet(); 

    sheet.Id = package.WorkbookPart.GetIdOfPart(wspart); 
    sheet.SheetId = 1; 
    sheet.Name = "Hello !"; 
    package.WorkbookPart.Workbook.GetFirstChild<Sheets>().AppendChild<Sheet>(sheet); 
    package.WorkbookPart.Workbook.Save(); 
    package.Close(); 
} 
+0

Ihrem Dokument fehlt wahrscheinlich etwas, das von Office benötigt wird. Wird die Datei in Excel 2007 geöffnet oder erhalten Sie eine Nachricht, dass das Dokument beschädigt ist? –

+0

Btw, es ist wahrscheinlich einfacher, von einem vorhandenen XLSX-Dokument zu starten und OpenXML zu verwenden, um es anzupassen. –

Antwort

0

Vielen Dank für Vorschlag. Ich habe die Antwort auf meine Frage erhalten. Ich habe die cellReference-Eigenschaft von Cell nicht in meinem Code festgelegt.

Verwandte Themen