「python excel 列 削除 openpyxl」
といった検索キーワードで、時折アクセスがあることに気がつきました。
Office Open XML形式のExcelファイルを操作するPythonのライブラリ、OpenPyXLを使って、Excelのいずれかのワークシートから列を削除するには、どのようなコードを書けばいいのかを探していらしたのでしょう。
OpenPyXLではWorksheet.delete_cols()メソッドで列が削除できる
結論からお伝えします。
OpenPyXLの、Worksheet.delete_cols()メソッドを使うと、ワークシートの列を削除できます。
複数の列を削除するサンプルスクリプト
Cドライブのtempフォルダーに、org.xlsxファイルを用意しておいてから以下のスクリプトを実行してください。
bk = xl.load_workbook(r'C:\temp\org.xlsx')
ws = bk.worksheets[0]
ws.delete_cols(idx=3, amount=3)
Wosksheet.delete_cols()メソッドの、引数idxに指定された3列目から、引数amountに指定された合計3列、
ws.delete_cols(idx=3, amount=3)
すなわち3・4・5列目が削除されたnew.xlsxファイルがCドライブtempフォルダーに作成されます。
C:\temp\org.xlsxファイルの先頭シートの1行目に、下図のように連続する整数を入力しておいて
上記のスクリプトを実行すると、new.xlsxは下図のような状態になります。
最終更新日時:2023-01-12 16:23
Home » Python » OpenPyXLの使い方 » OpenPyXLで列を削除する-Worksheet.delete_cols()メソッド