Arbeitsblätter verwalten
Aspose.Cells bietet eine KlasseIWorkbook die eine Excel-Datei darstellt. DasIWorkbook Klasse enthält aArbeitsblätterSammlung, die den Zugriff auf jedes Arbeitsblatt in der Excel-Datei ermöglicht.
Ein Arbeitsblatt wird durch dargestelltIArbeitsblatt Klasse. DasIArbeitsblatt-Klasse bietet eine breite Palette von Methoden zum Verwalten von Arbeitsblättern.
Hinzufügen von Arbeitsblättern zu einer neuen Excel-Datei
So erstellen Sie programmgesteuert eine neue Excel-Datei:
- Erstellen Sie ein Objekt derIArbeitsblattKlasse.
- Ruf den … anAddieren Methode derIWorksheetCollection Sammlung. Der Excel-Datei wird automatisch ein leeres Arbeitsblatt hinzugefügt. Es kann darauf verwiesen werden, indem der Blattindex des neuen Arbeitsblatts an die übergeben wirdIWorksheetCollectionSammlung.
- Besorgen Sie sich eine Arbeitsblattreferenz.
- Bearbeiten Sie die Arbeitsblätter.
- Speichern Sie die neue Excel-Datei mit neuen Arbeitsblättern, indem Sie die aufrufenIWorkbook KlasseSpeichernMethode.
//For complete examples and data files, please go to https://github.com/aspose-cells/Aspose.Cells-for-C | |
//Output directory path | |
StringPtr outDir = new String("..\\Data\\02_OutputDirectory\\"); | |
//Path of output excel file | |
StringPtr outputManageWorksheets = outDir->StringAppend(new String("outputManageWorksheets.xlsx")); | |
//Create workbook | |
intrusive_ptr<IWorkbook> workbook = Factory::CreateIWorkbook(); | |
// Adding a new worksheet to the Workbook object | |
int i = workbook->GetIWorksheets()->Add(); | |
// Obtaining the reference of the newly added worksheet by passing its sheet index | |
intrusive_ptr<IWorksheet> worksheet = workbook->GetIWorksheets()->GetObjectByIndex(i); | |
// Setting the name of the newly added worksheet | |
worksheet->SetName(new String("My Worksheet")); | |
// Save the Excel file. | |
workbook->Save(outputManageWorksheets); | |
StringPtr msg = new String("New worksheet added successfully with in a workbook!"); | |
Console::WriteLine(msg); |
Zugriff auf Arbeitsblätter über den Blattindex
Der folgende Beispielcode zeigt, wie Sie auf ein beliebiges Arbeitsblatt zugreifen oder es abrufen, indem Sie seinen Index angeben.
//For complete examples and data files, please go to https://github.com/aspose-cells/Aspose.Cells-for-C | |
//Source directory path | |
StringPtr srcDir = new String("..\\Data\\01_SourceDirectory\\"); | |
//Path of input excel file | |
StringPtr sampleManageWorksheets = srcDir->StringAppend(new String("sampleManageWorksheets.xlsx")); | |
//Load the sample Excel file | |
intrusive_ptr<IWorkbook> workbook = Factory::CreateIWorkbook(sampleManageWorksheets); | |
//Accessing a worksheet using its index | |
intrusive_ptr<IWorksheet> worksheet = workbook->GetIWorksheets()->GetObjectByIndex(0); | |
//Access the cell by its name. | |
intrusive_ptr<ICell> cell = worksheet->GetICells()->GetObjectByIndex(new String("F7")); | |
//Print the value of cell F7 | |
StringPtr val = cell->GetStringValue(); | |
//Print the value on console. | |
Console::Write(new String("Value of cell F7: ")); | |
Console::WriteLine(val); |
Arbeitsblätter mit Blattindex entfernen
Das Entfernen von Arbeitsblättern nach Namen funktioniert gut, wenn der Name des Arbeitsblatts bekannt ist. Wenn Sie den Namen des Arbeitsblatts nicht kennen, verwenden Sie eine überladene Version vonEntfernenBeiMethode, die den Blattindex des Arbeitsblatts anstelle seines Blattnamens verwendet.
//For complete examples and data files, please go to https://github.com/aspose-cells/Aspose.Cells-for-C | |
//Source directory path | |
StringPtr srcDir = new String("..\\Data\\01_SourceDirectory\\"); | |
//Output directory path | |
StringPtr outDir = new String("..\\Data\\02_OutputDirectory\\"); | |
//Path of input excel file | |
StringPtr sampleManageWorksheets = srcDir->StringAppend(new String("sampleManageWorksheets.xlsx")); | |
//Path of output excel file | |
StringPtr outputManageWorksheets = outDir->StringAppend(new String("outputManageWorksheets.xlsx")); | |
//Load the sample Excel file | |
intrusive_ptr<IWorkbook> workbook = Factory::CreateIWorkbook(sampleManageWorksheets); | |
//Removing a worksheet using its sheet index | |
workbook->GetIWorksheets()->RemoveAt(0); | |
//Save the Excel file. | |
workbook->Save(outputManageWorksheets); |