Excel のワークブックは、1 つ以上のワークシートで構成され、それぞれのワークシートは独立しています。既存の Excel ファイルを操作する場合や、新しいファイルをゼロから作成する場合でも、必要に応じてワークシートを追加することで、データの管理や分析がしやすくなります。本記事では、Spire.XLS for Python を使用して、プログラムから Excel ファイルにワークシートを追加する方法を解説します。
Spire.XLS for Python のインストール
この操作には、Spire.XLS for Python と plum-dispatch v1.7.4 が必要です。これらは、Spire.XLS for Python の公式ウェブサイトから手動でダウンロードするか、以下の pip コマンドでインストールできます。
pip install Spire.XLS
既存の Excel ファイルにワークシートを追加する
Spire.XLS for Python では、Workbook.Worksheets.Add(sheetName) メソッドを使って、既存の Excel ファイルに新しいワークシートを追加できます。以下の手順で実装できます:
- Workbook クラスのオブジェクトを作成します。
- Workbook.LoadFromFile() メソッドで Excel ファイルを読み込みます。
- Workbook.Worksheets.Add(sheetName) メソッドを使って新しいワークシートを追加します。
- Worksheet.Range[cellName].Text プロパティで、セルA1にテキストを追加します。
- Workbook.SaveToFile() メソッドで結果ファイルを保存します。
- Python
from spire.xls import Workbook
inputFile = " Sample.xlsx"
outputFile = "output/ワークシートの追加.xlsx"
# Workbook クラスのオブジェクトを作成します
workbook = Workbook()
# Excel ファイルをディスクから読み込みます
workbook.LoadFromFile(inputFile)
# 新しいワークシートをこのファイルに追加します
sheet = workbook.Worksheets.Add("新しいシート")
# A1 セルに目的のテキストを追加します
sheet.Range.get_Item("A1").Text = "これは新しく追加されたシートです。"
# 結果ファイルを保存します
workbook.SaveToFile(outputFile)
workbook.Dispose()
新規 Excel ファイルにワークシートを追加する
既存ファイルだけでなく、新規作成した Excel ファイルにもワークシートを追加できます。新規ファイルにはデフォルトのワークシートが含まれているため、まず Workbook.Worksheets.Clear() メソッドでそれを削除してから、新しいシートを追加します。手順は以下の通りです:
- Workbook クラスのオブジェクトを作成します。
- Workbook.Worksheets.Clear() メソッドで既定のワークシートを削除します。
- Workbook.Worksheets.Add(sheetName) メソッドで新しいワークシートを追加します。
- Worksheet.Range[cellName].Text プロパティで、セルA1にテキストを追加します。
- Workbook.SaveToFile() メソッドでファイルを保存します。
- Python
from spire.xls import Workbook, ExcelVersion
outputFile = "output/ワークシートの追加.xlsx"
# Workbook クラスのオブジェクトを作成します
workbook = Workbook()
# 既定のシートをクリアします
workbook.Worksheets.Clear()
# 新しいファイルにワークシートを追加します
sheet = workbook.Worksheets.Add("新しいシート")
# A1 セルに目的のテキストを追加します
sheet.Range.get_Item("A1").Text = "これも新しく追加されたワークシートである。"
# 結果ファイルを保存します
workbook.SaveToFile(outputFile, ExcelVersion.Version2016)
workbook.Dispose()
複数のワークシートを新規 Excel ファイルに追加する
複数のワークシートを一括で新規 Excel ファイルに追加したい場合は、Workbook.CreateEmptySheets(sheetCount) メソッドを使用します。以下のように実装できます:
- Workbook クラスのオブジェクトを作成します。
- Workbook.CreateEmptySheets(sheetCount) メソッドで、任意の数のワークシートを追加します(例:3シート)。
- 追加した各ワークシートに対してループ処理を行い、Worksheet.Range[cellName].Text プロパティでセルA1にテキストを追加します。
- Workbook.SaveToFile() メソッドで結果ファイルを保存します。
- Python
from spire.xls import Workbook, ExcelVersion
outputFile = "output/ワークシートの追加.xlsx"
# Workbook クラスのオブジェクトを作成します
workbook = Workbook()
# このファイルに 3 枚のシートを追加します
sheetCount = 3
workbook.CreateEmptySheets(sheetCount)
# 追加されたワークシートをループ処理します
for i in range(sheetCount):
# 各ワークシートの A1 セルにテキストを追加します
sheet = workbook.Worksheets[i]
sheet.Range["A1"].Text = "これはSheet{} です。".format(i+1)
# 結果ファイルを保存します
workbook.SaveToFile(outputFile, ExcelVersion.Version2016)
workbook.Dispose()
一時ライセンスを申請する
結果ドキュメントから評価メッセージを削除したい場合、または機能制限を取り除く場合は、についてこのメールアドレスはスパムボットから保護されています。閲覧するにはJavaScriptを有効にする必要があります。にお問い合わせ、30 日間有効な一時ライセンスを取得してください。