0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

PythonでExcelの行や列を削除する

Posted at

Excelのスプレッドシートを扱っていると、不要な行や列を削除したくなることがあります。もしプログラムで削除を自動化したいのであれば、Pythonを使ってExcelの行や列を削除する以下の3つの方法を参考にしてください:

Python Excelライブラリ

上記の方法は、Spire.XLS for Python ライブラリの助けを借りて実現されているので、まずpipコマンドを使ってライブラリをインストールする必要があります。

pip install Spire.XLS

使用されるクラスとメソッド

インストール後、Excelから行や列を削除するためのSpire.XLS for Pythonライブラリが提供するクラスやメソッドを簡単に見てみましょう:

  • Workbook クラス:ワークブックを表します。
  • Worksheet クラス: ワークシートを表します。
  • Worksheet.DeleteRow(rowIndex) メソッド:指定された行をインデックス単位で削除する(行インデックスは 1 から開始)。
  • Worksheet.DeleteColumn(columnIndex) メソッド:指定された列をインデックス単位で削除する(列インデックスは 1 から開始)。
  • Worksheet.DeleteRow(startRowIndex, rowCount) メソッド: 開始行インデックスと削除する行数を指定して、複数の行を一度に削除します。
  • Worksheet.DeleteColumn(startColumnIndex、columnCount) メソッド: 開始列インデックスと削除する列数を指定して、複数の列を一度に削除する。
  • Worksheet.Row[rowIndex].IsBlank プロパティ: 指定された行が空白行かどうかを判定する。
  • Worksheet.Column[columnIndex].IsBlank プロパティ: 指定された列が空白列かどうかを判定します。

PythonでExcelの指定した行や列を削除する

from spire.xls import *
from spire.xls.common import *

# Workbookオブジェクトの作成
workbook = Workbook()

# エクセルファイルを読み込む
workbook.LoadFromFile("input.xlsx")

# 最初のワークシートを取得する
sheet = workbook.Worksheets[0]

# ワークシートから5行目を削除する
sheet.DeleteRow(5)

# ワークシートから3列目を削除する。
sheet.DeleteColumn(3)

# 結果ファイルの保存
workbook.SaveToFile("DeleteRowColumn.xlsx", ExcelVersion.Version2016)
workbook.Dispose()

PythonでExcelの複数の行や列を削除する

from spire.xls import *
from spire.xls.common import *
 
# Workbookオブジェクトの作成
workbook = Workbook()
 
# エクセルファイルを読み込む
workbook.LoadFromFile("input.xlsx")
 
# 最初のワークシートを取得する
sheet = workbook.Worksheets[0]
 
# ワークシートから3行目、4行目、5行目、6行目、7行目を削除する(合計5行)
sheet.DeleteRow(3, 5)
 
# ワークシートから4列目と5列目を削除する
sheet.DeleteColumn(4, 2)
 
# 結果ファイルの保存
workbook.SaveToFile("DeleteRowsColumns.xlsx", ExcelVersion.Version2016)
workbook.Dispose()

PythonでExcelの空白行と空白列を削除する

from spire.xls import *
from spire.xls.common import *
 
# Workbookオブジェクトの作成
workbook = Workbook()
 
# エクセルファイルを読み込む
workbook.LoadFromFile("示例.xlsx")
 
# 最初のワークシートを取得する
sheet = workbook.Worksheets[0]
 
# ワークシートから空白行を削除する
for i in range(sheet.Rows.Length - 1, -1, -1):
    if sheet.Rows[i].IsBlank:
        sheet.DeleteRow(i + 1)
 
# ワークシートから空白の列を削除する
for j in range(sheet.Columns.Length - 1, -1, -1):
    if sheet.Columns[j].IsBlank:
        sheet.DeleteColumn(j + 1)
 
# 結果ファイルの保存
workbook.SaveToFile("DeleteBlankRowColumn.xlsx", ExcelVersion.Version2016)
workbook.Dispose()

上記の3つの例では、Pythonを使ってExcelの1行や1列を削除する方法、複数の行や列を削除する方法、空白の行や列を削除する方法を示しています。さらに、Spire.XLS for PythonライブラリはExcelファイルの生成、読み込み、編集、変換もサポートしています。その他のデモはこちらをご覧ください。

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?