Benutzer mit den meisten Antworten
Excel: Neue Instanz aus Template

Frage
-
Hallo,
ich habe ein Excel-Template als xlt-Datei vorliegen. Ich würde gerne von diesem Template eine neue Instanz erzeugen und öffnen. Wenn ich diese Datei per C# öffne, wird allerdings das Template selbst auf gemacht und keine neue Instanz erstellt. Ich könnte zwar selber per Code diese neue Datei im Format *.xls unter einem bestimmten Namen speichern, aber ich möchte das Speichern dem Benutzer überlassen.
Weiß jemand, wie ich das Excel-File so öffnen kann, dass im Prinzip eine neue Datei daraus entsteht, wenn der Benutzer auf Speichern klickt und die Änderungen nicht gleich im Template gespeichert werden?
Antworten
-
Hi,
gib mal im zehnten Parameter false anstelle von true an. (das true hinter "\t").
http://msdn.microsoft.com/de-de/library/microsoft.office.interop.excel.workbooks.open.aspx
Editable sollte IIRC auf False stehen, da ansonsten eben das Template editiert wird.
Gruß, Stefan
Microsoft MVP - Visual Developer ASP/ASP.NET
http://www.asp-solutions.de/ - Consulting, Development
http://www.aspnetzone.de/ - ASP.NET Zone, die ASP.NET Community- Als Antwort markiert SPDeveloperXP Dienstag, 28. Juni 2011 09:14
Alle Antworten
-
Hi,
wäre es machbar, uns zu verraten, wie Du die Datei per C# öffnest? Der relevante Code wäre hilfreich, da dort sehr wahrscheinlich der Fehler zu suchen ist.
Gruß, Stefan
Microsoft MVP - Visual Developer ASP/ASP.NET
http://www.asp-solutions.de/ - Consulting, Development
http://www.aspnetzone.de/ - ASP.NET Zone, die ASP.NET Community -
Excel.Application xlApp; Excel.Workbook xlWorkBook; Excel.Worksheet xlWorkSheet; object misValue = System.Reflection.Missing.Value; xlApp = new Excel.ApplicationClass(); xlApp.Visible = true; string fileToOpen = @"C:\Vorlagen\Vorlage.xlt"; xlWorkBook = xlApp.Workbooks.Open(fileToOpen, 0, false, 5, "", "", true, Microsoft.Office.Interop.Excel.XlPlatform.xlWindows, "\t", true, false, 0, true, 1, 0); xlWorkSheet = (Excel.Worksheet)xlWorkBook.Worksheets.get_Item(1);
Hiermit öffne ich die Vorlage momentan, was dann eben entsprechend die Vorlage selbst zur Bearbeitung öffnet. -
Hi,
gib mal im zehnten Parameter false anstelle von true an. (das true hinter "\t").
http://msdn.microsoft.com/de-de/library/microsoft.office.interop.excel.workbooks.open.aspx
Editable sollte IIRC auf False stehen, da ansonsten eben das Template editiert wird.
Gruß, Stefan
Microsoft MVP - Visual Developer ASP/ASP.NET
http://www.asp-solutions.de/ - Consulting, Development
http://www.aspnetzone.de/ - ASP.NET Zone, die ASP.NET Community- Als Antwort markiert SPDeveloperXP Dienstag, 28. Juni 2011 09:14