スポンサーリンク
OpenPyXLを使用すると、PythonからExcelを操作することができます。
本記事では、OpenPyXLを使用した指定データをクリアする方法について、詳しくご説明します。
こんな人に読んでほしい
- Pythonを使用してExcelを操作したい人
- OpenPyXLを使用した、指定データをクリアする方法を知りたい人
指定データをクリアする
指定セル範囲
以下を入力することで、指定セル範囲のデータをクリアすることができます。
「min_row=3, min_col=2, max_row=7, max_col=6」で、B3からF7までの範囲のセルを指定します。
#input
import openpyxl
wb = openpyxl.load_workbook("fruit.xlsx")
ws = wb['Sheet1']
for row in ws.iter_rows(min_row=3, min_col=2, max_row=7, max_col=6):
for cell in row:
cell.value = None
# 名前を付けて保存
wb.save("fruit019.xlsx")

指定シート
以下を入力することで、指定シート内すべてのデータをクリアすることができます。
#input
import openpyxl
wb = openpyxl.load_workbook("fruit.xlsx")
ws = wb['Sheet1']
for row in ws:
for cell in row:
cell.value = None
# 名前を付けて保存
wb.save("fruit020.xlsx")

指定行
以下を入力することで、指定した行のデータをクリアすることができます。
#input
import openpyxl
wb = openpyxl.load_workbook("fruit.xlsx")
ws = wb['Sheet1']
for row in ws.iter_rows():
for cell in row:
if cell.row == 7:
cell.value = None
# 名前を付けて保存
wb.save("fruit024.xlsx")
指定行(7行目)のデータのみ、クリアされていることが分かるかと思います。

複数行を指定するには、以下のように入力します。
#input
import openpyxl
wb = openpyxl.load_workbook("fruit.xlsx")
ws = wb['Sheet1']
mylist = [4,6,8,10,12,14,16]
for list in mylist:
for row in ws.iter_rows():
for cell in row:
if cell.row == list:
cell.value = None
# 名前を付けて保存
wb.save("fruit025.xlsx")

指定行以降をクリアするには、以下のように入力します。
#input
import openpyxl
wb = openpyxl.load_workbook("fruit.xlsx")
ws = wb['Sheet1']
for row in ws.iter_rows(min_row=4):
for cell in row:
cell.value = None
# 名前を付けて保存
wb.save("fruit026.xlsx")

指定列
以下を入力することで、指定した列のデータをクリアすることができます。
#input
import openpyxl
wb = openpyxl.load_workbook("fruit.xlsx")
ws = wb['Sheet1']
for row in ws.iter_rows():
for cell in row:
if cell.col_idx == 4:
cell.value = None
# 名前を付けて保存
wb.save("fruit021.xlsx")
指定列(4列目(D列))のデータのみ、クリアされていることが分かるかと思います。

複数列を指定するには、以下のように入力します。
#input
import openpyxl
wb = openpyxl.load_workbook("fruit.xlsx")
ws = wb['Sheet1']
mylist = [4,5,6,7]
for list in mylist:
for row in ws.iter_rows():
for cell in row:
if cell.col_idx == list:
cell.value = None
# 名前を付けて保存
wb.save("fruit022.xlsx")

指定列以降をクリアするには、以下のように入力します。
#input
import openpyxl
wb = openpyxl.load_workbook("fruit.xlsx")
ws = wb['Sheet1']
for row in ws.iter_rows(min_col=6):
for cell in row:
cell.value = None
# 名前を付けて保存
wb.save("fruit023.xlsx")

まとめ
この記事では、OpenPyXLを使用した指定データをクリアする方法について、ご説明しました。
本記事を参考に、ぜひ試してみて下さい。
参考
Python学習用おすすめ教材
Pythonの基本を学びたい方向け
リンク
統計学基礎を学びたい方向け
リンク
Pythonの統計解析を学びたい方向け
リンク
おすすめプログラミングスクール
Pythonをはじめ、プログラミングを学ぶなら、TechAcademy(テックアカデミー)がおすすめです。
私も入っていますが、好きな時間に気軽にオンラインで学べますので、何より楽しいです。
現役エンジニアからマンツーマンで学べるので、一人では中々続かない人にも、向いていると思います。
無料体験ができますので、まずは試してみてください!
\まずは無料体験!/
スポンサーリンク