Pythonとxlwingsを使用してExcelのオートフィルターを活用する方法について説明します。この記事では、オートフィルターの基本的な使い方から、複数の条件を設定する方法、さらにはオートフィルターをクリアまたは削除する方法までをカバーします。
オートフィルターの基本的な使い方
まずは、一つの列に一つの条件を設定する基本的な使い方から始めましょう。以下のコードは、No.が1の行だけを表示する例です。
import xlwings as xw
wb = xw.Book('.\\\\autofilter.xlsx') # 既存のBOOKを開く
rng = wb.sheets[0].range('a1:f7')
# No.が1
rng.api.AutoFilter(Field=1, Criteria1="1") # Field=1 は左から数えて1番目の列
wb.save() # 保存
wb.close() # プロセスを削除
このコードを実行すると、エクセルのシートにはNo.が1の行だけが表示されます。
複数の条件を設定する方法
次に、一つの列に複数の条件を設定する方法を見てみましょう。以下のコードは、No.が1または3を超える行を表示する例です。
# No.が1 又は 3を超えるもの
rng.api.AutoFilter(Field=1, Criteria1='=1', Operator=2, Criteria2='>3') # Operator=2はOR
このコードを実行すると、エクセルのシートにはNo.が1または3を超える行が表示されます。
オートフィルターをクリアまたは削除する方法
最後に、オートフィルターをクリアまたは削除する方法を見てみましょう。以下のコードは、オートフィルターをクリアする例です。
# オートフィルターをクリア
wb.sheets[0].api.ShowAllData()
このコードを実行すると、全ての行が表示されます。
以上がPythonとxlwingsを使用してExcelのオートフィルターを活用する方法です。これらのテクニックを活用すれば、PythonからExcelのデータをより効率的に操作することが可能になります。ぜひ活用してみてください。.