【Python】特定文字を含む行を別シート抽出:openpyxl

openpyxl-特定文字を含む行を別シート抽出-アイキャッチ Python

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】エクセル処理を自動化:超便利51選
...

 

「Excel×Python最速仕事術」

Excelの面倒な操作はパソコンにやらせよう
実践的な例題で、業務に即したプログラムを紹介
無駄な残業をするのはもうたくさんな方にオススメの1冊です!