Excelファイルのデータ管理
セルにデータを追加する方法
Aspose.Cells for Python via .NETは、Microsoft Excelファイルを表すWorkbookクラスを提供します。Workbookクラスにはworksheetsコレクションが含まれており、Excelファイルの各ワークシートにアクセスできます。ワークシートはWorksheetクラスで表されます。Worksheetクラスにはcellsコレクションがあります。cellsコレクションの各アイテムはCellクラスのオブジェクトを表します。
Aspose.Cells for Python via .NETでは、Cellクラスのput_valueメソッドを呼び出すことで、ワークシートのセルにデータを追加することができます。Aspose.Cells for 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 for Python via .NETは、Microsoft Excelファイルを表すWorkbookクラスを提供します。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のセルは例外をスローします。
また、Cellクラスのtypeプロパティを使用してセルに含まれるデータの型を確認することもできます。実際、Cellクラスのtypeプロパティは、その前に定義された値がリストされたCellValueType列挙型に基づいています。
セル値の種類 | 説明 |
---|---|
IS_BOOL | はセルの値がブール値であることを指定します。 |
IS_DATE_TIME | はセルの値が日付/時刻であることを指定します。 |
IS_NULL | は空白のセルを表します。 |
IS_NUMERIC | はセルの値が数値であることを指定します。 |
IS_STRING | セルの値が文字列であることを指定します。 |
IS_ERROR | セルの値がエラー値であることを指定します。 |
IS_UNKNOWN | セルの値が不明であることを指定します。 |
上記の事前定義されたセル値タイプを使用して、各セルに存在するデータのTypeと比較することもできます。
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 |