Python(openpyxl)で、エクセルで特定文字を含む行を別シート抽出するコードをご紹介します。
ぜひ、お試しください。
Excelの特定文字を含む行を別シート抽出
以下のコードを実行すると、指定文字を含んでいる行を別シートに転記します。
import openpyxl
#エクセルファイルを開く
wb = openpyxl.load_workbook('C:/Users/admin/Desktop/テスト/test.xlsx')
#開いたファイルのシートを変数格納
ws1 = wb['Sheet1']
ws2 = wb['Sheet2']
#転記開始行
j = 2
#検索する文字指定
MyValue = ['クリア','つるつる']
#配列ループ
for list in MyValue:
#セルをループ
for row in ws1.iter_rows():
for cell in row:
#1列目だったら
if cell.col_idx == 1:
#セルに指定文字が含まれていたら
if list in cell.value:
#ws1 A~C列ループ
for i in range(1,4):
#ws1の該当行をコピー
copy = ws1.cell(row = cell.row, column = i).value
#ws2へ転記
ws2.cell(row = j, column = i, value = copy)
#ws2の転記行を更新
j += 1
#別名で保存
wb.save('C:/Users/admin/Desktop/テスト/test抽出.xlsx')
コード実行前
[wb] ファイルには、シートが2つ存在しています。
コード実行後
「Sheet1」のA列で 「クリア」か「つるつる」 を含む行を、
「Sheet2」へ転記します。
この記事がお役に立ちますと幸いです。
・【Python】エクセルを自動処理する方法まとめ
【Python】エクセル処理を自動化:超便利55選
...
「Excel×Python最速仕事術」
Excelの面倒な操作はパソコンにやらせよう
実践的な例題で、業務に即したプログラムを紹介
無駄な残業をするのはもうたくさんな方にオススメの1冊です!
リンク