So erstellen Sie ein neues Arbeitsblatt in der Excel-Datei c#?
Brauche ich, um eine sehr große Excel-Datei, aber die excel-Datei in ein Arbeitsblatt kann bis zu 65k Zeilen. So möchte ich teilen alle meine Infos in mehrere Arbeitsblätter dynamisch.
Das ist meine Ungefähre code
//------------------Create Excel App--------------------
Excel.Application xlApp;
Excel.Workbook xlWorkBook;
Excel.Worksheet xlWorkSheet;
object misValue = System.Reflection.Missing.Value;
xlApp = new Excel.Application();
xlWorkBook = xlApp.Workbooks.Add(misValue);
xlWorkSheet = (Excel.Worksheet)xlWorkBook.Worksheets.get_Item(numberOfLetters);
foreach (string letter in letters)
{
xlWorkSheet.Cells[rowIndex, 1] = letter;
rowIndex++;
}
xlWorkBook.SaveAs(pathXL, Excel.XlFileFormat.xlWorkbookNormal, misValue, misValue, misValue, misValue, Excel.XlSaveAsAccessMode.xlExclusive, misValue, misValue, misValue, misValue, misValue);
xlWorkBook.Close(true, misValue, misValue);
xlApp.Quit();
Wie ich hinzufügen kann, neues Arbeitsblatt in meiner foreach-Schleife, und die Bedingung geben Sie einen Namen zum Arbeitsblatt (die der Benutzer sehen kann, in Excel am Ende der Seite in der Liste)?
Einige so
foreach (string letter in letters)
{
if (letter == SOME)
{
AddNewWorksheet and give name SOME
}
xlWorkSheet.Cells[rowIndex, 1] = letter;
rowIndex++;
}
Und so speichern Sie alle Arbeitsblätter am Ende?
- Excel 2010 unterstützt 1 Millionen Zeilen. Welche version Sie auf?
- Ich versuche, Sie zu speichern in .xls
- Aber selbst wenn ich " speichern in version 2010 meine Frage ist immer noch sinnvoll, weil es gonna be besser lesbaren format.
- .xls - format vor version 2007, also meine Antwort impliziert, dass ich die version weniger als 2010
Du musst angemeldet sein, um einen Kommentar abzugeben.
Hinzufügen, um ein neues Arbeitsblatt zu der Arbeitsmappe diesen code verwenden:
Speichern Sie die Arbeitsmappe aufrufen
Save()
Methode:Dies ist der richtige code, der in der MSDN-Website.
Für weitere Informationen klicken Sie bitte auf den link
Im Allgemeinen, wenn Sie wollen neues Blatt anlegen nur :
wissen, dass Sie bereits erstellt, die Arbeitsmappe, wie unten :
Beschränkt zu 65.000 Datensätze mit .xls , aber wenn Sie sind "erlaubt" Schritt darüber hinaus .xls /2003 und in 2007 und oben mit .xlsx Sie sollten viel mehr Zeilen.
Randnotiz, nichts zu tun mit deiner Frage, aber eine Weile zurück, ich hatte nach excel exportieren Probleme mit RDLC-und sheet-Namen umbenannt habe ich Sie mit NPOI Bibliothek, seitdem ich begann mit NPOI viel mehr, es ist kostenlos /open source und sehr mächtig (portiert von Java-POI an .net NPOI) wieder, während ich sagen, es ist nicht wirklich ein Teil von dem, was Ihre Frage ist, ich würde nicht überrascht sein, wenn er Beispiele auf, dies zu tun (Nein, ich arbeite nicht für Sie ) http://npoi.codeplex.com/
Hier ist der code, den ich geschrieben hatte für das umbenennen von Blättern (die bis Ende neu zu erstellen, die Blätter mit einem anderen memorystream