この記事では、オペレーティングエクセル(のxlsx)ファイルを達成するために、使用するPython言語を説明し、具体的な内容はopenyxlライブラリーを用いて達成する必要があります交換してください。
現在は三つの小さな機能を実装します。
代替的に全ワード(MODE1);(例:単語全体yocichen、代わりことyoci X-チェン)
2.あるいは文字(MODE2)の部分と一致する;(例:Thisis yociブログ、あるいはThisisことyocichenブログ)
3.全単語(MODE3)充填;(例:yoci、代替的である愚か:yociの文字の後に文字を追加するため、)
出典:
1 インポートopenpyxl 2 インポート再 3 インポートトレースバック 4 5 changeCells = 0 6 7 位特別なコンテンツ交換 8 ""」 9 ファイル:ファイルパス:STR 10 モード:operatorationのタイプ:int型 11 のテキスト:文字列がreplaceedする必要が:intまたはSTR 12 のreplaceText:置換テキスト:intまたはSTR 13 ""」 14 DEF changeData(ファイル、モード、テキスト、のreplaceText): 15 #負荷ファイル(* XLSX) 16 、WB =openpyxl.load_workbook(ファイル) 17 #!一枚のシートを扱う 18の WS = wb.worksheets [0] 19 グローバルchangeCells 20 位取得ファイルの行と列 21 行= ws.max_row 22の COLS = ws.max_column 23 changeFlag = Falseの 24 トライ: 25 のための行に範囲(1 、行は+ 1 ): 26 用の COL における範囲(1、COLS + 1 ): 27 = ws.cellコンテンツ(行=行、列=COL)が.VALUE 28の 場合(コンテンツ!= なし): 29 #1 MODE1:fullmatch交換 30を 場合(モード== 1 ): 31 場合(コンテンツ== :テキスト) 32 ws.cell(行=行、列= COL) .VALUE = のreplaceText 33 changeFlag = Trueを 34 changeCells + = 1 35 #のMODE2:部分的な交換 36 ELIF(モード== 2 ): 37 であれば(タイプ(コンテンツ)== STR): 38 ws.cell(行=行、列= COL).VALUE = content.replace( 39 テキスト、のreplaceText、1 ) 40 changeFlag = Trueを 41 changeCells + = 1 42 #のMODE3:partialmatch及び充填 43 ELIF(モード== 3 ) : 44 であれば(タイプ(コンテンツ)== STR): 45 ws.cell(行=行、列= COL).VALUE = content.replace( 46 テキスト、テキスト+のreplaceText、1 ) 47 changeFlagは= Trueを 48 changeCells + = 1 49 他: 50 リターン0 51 #status_1:成功変性 52 であれば(changeFlag): 53 wb.save(ファイル) 54 リターンchangeCells 55 #status_2:無変性 56 他の: 57 戻りchangeCells 58 #status_3:例外 59 を除き、Eなど例外: 60 プリント(traceback.format_exc()) 61 62 63 #は、ファイルの内容読み出さ 64 " "" 65 :ファイルパス:STRファイル 66 """ 67 デフrdxl(ファイル): 68 #負荷ファイル(* XLSX。) 69 、WB = openpyxl.load_workbook(ファイル) 70 #!一枚のシートを扱う 71の WS = wb.worksheets [0] 72 グローバルchangeCells 73 位得る行およびファイルの列 74 行= ws.max_row 75 COLS = ws.max_column 76 changeFlag =偽 77個の 細胞= 0 78 のための行に範囲(1行+ 1 ): 79 用の COL における範囲(1、COLS + 1 ): 80 含有量= ws.cell(行=行、列= COL)は.VALUE 81 印刷(コンテンツ) 82個の 細胞+ = 1枚の 83 プリント(' 細胞' 、セル) 84 85 86 なら __name__ == " __main__ " : 87の RES = changeData('D:\\ 001.xlsx '1、7777、。 ' バグメーカー' ) 88 IF(RES =!:なし) 89 印刷(' 修正 'RES、 ' 時" ) 90 #他に: 91は、 #1 (印刷'操作に失敗しました:\ N-' + RES) 92 rdxlを(" D:\\ 001.xlsx ")