Управление рабочими листами
Contents
[
Hide
]
Разработчики могут легко создавать рабочие листы в файлах Excel Microsoft и управлять ими программно, используя Aspose.Cells гибкий API. В этом разделе описываются подходы к добавлению и удалению рабочих листов в файлах Excel Microsoft.
Aspose.Cells предоставляет классIWorkbook который представляет файл Excel.IWorkbook класс содержитРабочие листыколлекция, которая обеспечивает доступ к каждому рабочему листу в файле Excel.
Рабочий лист представленрабочий лист учебный класс.рабочий листКласс предоставляет широкий спектр методов для управления рабочими листами.
Добавление рабочих листов в новый файл Excel
Чтобы создать новый файл Excel программно:
- Создайте объект израбочий листучебный класс.
- ПозвонитеДобавлять методIWorksheetCollection коллекция. Пустой рабочий лист автоматически добавляется в файл Excel. На него можно сослаться, передав индекс листа нового рабочего листа вIWorksheetCollectionколлекция.
- Получите ссылку на рабочий лист.
- Выполнить работу с рабочими листами.
- Сохраните новый файл Excel с новыми рабочими листами, вызвавIWorkbook учебный классСохранятьметод.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
//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); |
Доступ к рабочим листам с помощью индекса листов
В следующем примере кода показано, как получить доступ к любому рабочему листу, указав его индекс.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
//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); |
Удаление рабочих листов с помощью индекса листов
Удаление рабочих листов по имени хорошо работает, когда известно имя рабочего листа. Если вы не знаете имя рабочего листа, используйте перегруженную версиюRemoveAtметод, который принимает индекс листа рабочего листа вместо его имени листа.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
//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); |