Управление данными файлов Excel
Как добавить данные в ячейки
Aspose.Cells для Python via .NET предоставляет класс Workbook, который представляет файл Microsoft Excel. Класс Workbook содержит коллекцию worksheets, позволяющую получить доступ к каждому листу Excel-файла. Лист представлен классом Worksheet. Класс Worksheet предоставляет коллекцию cells. Каждый элемент в коллекции cells представляет объект класса Cell.
Aspose.Cells для Python via .NET позволяет разработчикам добавлять данные в ячейки на листах, вызывая метод Cell класса put_value. Aspose.Cells для Python via .NET предоставляет перегруженные версии метода put_value, которые позволяют разработчикам добавлять различные виды данных в ячейки. С использованием этих перегруженных версий метода put_value возможно добавить булевое, строковое, вещественное, целочисленное или дату/время и т. д. значения в ячейку.
from aspose.cells import Workbook | |
from datetime import datetime | |
from os import os, path | |
# For complete examples and data files, please go to https:# github.com/aspose-cells/Aspose.Cells-for-.NET | |
# The path to the documents directory. | |
dataDir = RunExamples.GetDataDir(".") | |
# Create directory if it is not already present. | |
IsExists = path.isdir(dataDir) | |
if notIsExists: | |
os.makedirs(dataDir) | |
# Instantiating a Workbook object | |
workbook = Workbook() | |
# Obtaining the reference of the first worksheet | |
worksheet = workbook.worksheets[0] | |
# Adding a string value to the cell | |
worksheet.cells.get("A1").put_value("Hello World") | |
# Adding a double value to the cell | |
worksheet.cells.get("A2").put_value(20.5) | |
# Adding an integer value to the cell | |
worksheet.cells.get("A3").put_value(15) | |
# Adding a boolean value to the cell | |
worksheet.cells.get("A4").put_value(True) | |
# Adding a date/time value to the cell | |
worksheet.cells.get("A5").put_value(datetime.now()) | |
# Setting the display format of the date | |
style = worksheet.cells.get("A5").get_style() | |
style.number = 15 | |
worksheet.cells.get("A5").set_style(style) | |
# Saving the Excel file | |
workbook.save(dataDir + "output.out.xls") |
Как улучшить эффективность
Если вы используете метод put_value для вставки большого количества данных на листе, вам следует добавлять значения в ячейки сначала по строкам, а затем по столбцам. Такой подход значительно улучшает эффективность ваших приложений.
Как извлечь данные из ячеек
Aspose.Cells для Python via .NET предоставляет класс Workbook, представляющий файл Microsoft Excel. Класс Workbook содержит коллекцию worksheets, позволяющую получить доступ к листам в файле. Лист представлен классом Worksheet. Класс Worksheet предоставляет коллекцию cells. Каждый элемент в коллекции cells представляет объект класса Cell.
Класс Cell предоставляет несколько свойств, позволяющих разработчикам извлекать значения из ячеек в соответствии с их типами данных. Эти свойства включают:
- string_value: возвращает строковое значение ячейки.
- double_value: возвращает числовое значение ячейки.
- bool_value: возвращает логическое значение ячейки.
- date_time_value: возвращает дату/время значения ячейки.
- float_value: возвращает дробное значение ячейки.
- int_value: возвращает целочисленное значение ячейки.
Когда поле не заполнено, ячейки со значением double_value или float_value возбуждают исключение.
Тип данных, содержащихся в ячейке, также можно проверить, используя свойство класса type Cell. Фактически, свойство класса type Cell основано на перечислении CellValueType, чьи предопределенные значения перечислены ниже:
Типы Значений Ячеек | Описание |
---|---|
IS_BOOL | Указывает, что значение ячейки логическое. |
IS_DATE_TIME | Указывает, что значение ячейки является датой/временем. |
IS_NULL | Представляет пустую ячейку. |
IS_NUMERIC | Указывает, что значение ячейки является числовым. |
IS_STRING | Указывает, что значение ячейки является строкой. |
IS_ERROR | Указывает, что значение ячейки является значением ошибки. |
IS_UNKNOWN | Указывает, что значение ячейки неизвестно. |
Вы также можете использовать вышеперечисленные предопределенные типы значений ячейки для сравнения с типом данных, присутствующим в каждой ячейке.
from aspose.cells import CellValueType, Workbook | |
# For complete examples and data files, please go to https:# github.com/aspose-cells/Aspose.Cells-for-.NET | |
# The path to the documents directory. | |
dataDir = RunExamples.GetDataDir(".") | |
# Opening an existing workbook | |
workbook = Workbook(dataDir + "book1.xls") | |
# Accessing first worksheet | |
worksheet = workbook.worksheets[0] | |
for cell1 in worksheet.cells: | |
# Passing the type of the data contained in the cell for evaluation | |
if cell1.type == CellValueType.IS_STRING: | |
stringValue = cell1.string_value | |
print("String Value: " + stringValue) | |
elif cell1.type == CellValueType.IS_NUMERIC: | |
doubleValue = cell1.double_value | |
print("Double Value: " + str(doubleValue)) | |
elif cell1.type == CellValueType.IS_BOOL: | |
boolValue = cell1.bool_value | |
print("Bool Value: " + str(boolValue)) | |
elif cell1.type == CellValueType.IS_DATE_TIME: | |
dateTimeValue = cell1.date_time_value | |
print("DateTime Value: " + str(dateTimeValue)) | |
elif cell1.type == CellValueType.IS_UNKNOWN: | |
stringValue = cell1.string_value | |
print("Unknown Value: " + stringValue) | |
elif cell1.type == CellValueType.IS_NULL: | |
pass |
Продвинутые темы
- Доступ к ячейкам листа
- Преобразование текстовых числовых данных в число
- Создание итогов
- Фильтрация данных
- Сортировка данных
- Валидация данных
- Получение строкового значения ячейки с или без форматирования
- Добавление HTML-форматированного текста в ячейку
- Поиск или поиск данных
- Вставка гиперссылок в Excel или OpenOffice
- Измерение ширины и высоты значения ячейки в пикселях
- Преобразование между именем ячейки и индексом строки/столбца
- Сначала заполняется строка, а затем столбец.
- Сохранить префикс одинарной кавычки значения ячейки или диапазона
- Доступ и обновление частей Rich Text ячейки