Управление рабочими листами
Aspose.Cells предоставляет класс Workbook, который представляет файл Excel. Класс Workbook содержит коллекцию Worksheets, позволяющую получить доступ к каждому рабочему листу в файле Excel.
Рабочий лист представляется классом Worksheet. Класс Worksheet предоставляет широкий спектр методов для управления рабочими листами.
Добавление рабочих листов в новый файл Excel
Для создания нового файла Excel программно:
- Создайте объект класса Worksheet.
- Вызовите метод Add коллекции WorksheetCollection. Пустой рабочий лист будет добавлен в файл Excel автоматически. Можно ссылаться на него, передавая индекс листа нового рабочего листа в коллекцию WorksheetCollection.
- Получите ссылку на рабочий лист.
- Выполнение работы с рабочими листами.
- Сохраните новый файл Excel с новыми рабочими листами, вызвав метод Save класса Workbook.
//For complete examples and data files, please go to https://github.com/aspose-cells/Aspose.Cells-for-C | |
Aspose::Cells::Startup(); | |
//Output directory path | |
U16String outDir(u"..\\Data\\02_OutputDirectory\\"); | |
//Path of output excel file | |
U16String outputManageWorksheets = outDir + u"outputManageWorksheets.xlsx"; | |
//Create workbook | |
Workbook workbook; | |
// Adding a new worksheet to the Workbook object | |
int i = workbook.GetWorksheets().Add(); | |
// Obtaining the reference of the newly added worksheet by passing its sheet index | |
Worksheet worksheet = workbook.GetWorksheets().Get(i); | |
// Setting the name of the newly added worksheet | |
worksheet.SetName(u"My Worksheet"); | |
// Save the Excel file. | |
workbook.Save(outputManageWorksheets); | |
std::cout <<"New worksheet added successfully with in a workbook!" << std::endl; | |
Aspose::Cells::Cleanup(); |
Доступ к рабочим листам с использованием индекса листа.
Приведенный ниже образец кода показывает, как получить любой рабочий лист, указав его индекс.
//For complete examples and data files, please go to https://github.com/aspose-cells/Aspose.Cells-for-C | |
Aspose::Cells::Startup(); | |
//Source directory path | |
U16String srcDir(u"..\\Data\\01_SourceDirectory\\"); | |
//Path of input excel file | |
U16String sampleManageWorksheets = srcDir + u"sampleManageWorksheets.xlsx"; | |
//Load the sample Excel file | |
Workbook workbook(sampleManageWorksheets); | |
//Accessing a worksheet using its index | |
Worksheet worksheet = workbook.GetWorksheets().Get(0); | |
//Access the cell by its name. | |
Cell cell = worksheet.GetCells().Get(u"F7"); | |
//Print the value of cell F7 | |
U16String val = cell.GetStringValue(); | |
//Print the value on console. | |
std::cout << "Value of cell F7: " << val.ToUtf8() << std::endl; | |
Aspose::Cells::Cleanup(); |
Удаление рабочих листов с использованием индекса листа.
Удаление листов по имени хорошо работает, когда известно имя листа. Если вы не знаете имя листа, используйте перегруженную версию метода RemoveAt, который принимает индекс листа вместо его имени.
//For complete examples and data files, please go to https://github.com/aspose-cells/Aspose.Cells-for-C | |
Aspose::Cells::Startup(); | |
//Source directory path | |
U16String srcDir(u"..\\Data\\01_SourceDirectory\\"); | |
//Output directory path | |
U16String outDir(u"..\\Data\\02_OutputDirectory\\"); | |
//Path of input excel file | |
U16String sampleManageWorksheets = srcDir + u"sampleManageWorksheets.xlsx"; | |
//Path of output excel file | |
U16String outputManageWorksheets = outDir + u"outputManageWorksheets.xlsx"; | |
//Load the sample Excel file | |
Workbook workbook(sampleManageWorksheets); | |
//Removing a worksheet using its sheet index | |
workbook.GetWorksheets().RemoveAt(0); | |
//Save the Excel file. | |
workbook.Save(outputManageWorksheets); | |
Aspose::Cells::Cleanup(); |