Pythonで不統一なExcelファイル繋ぐワザの神髄 シンプルな文法で書くプログラミングで効率化
「読み込み設定.xlsx」にそろえて列順を変える
では、16~22行目に書かれている、いちばん内側のループを見ていきましょう。
ここでは「読み込み設定.xlsx」のデータを列ごとに分割し、それに対して繰り返し処理をしています。そのため、列の順番は「読み込み設定.xlsx」にそろうことになります。
ただし、支店のデータの中に「読み込み設定.xlsx」の列に相当するデータがない場合もありえます。具体的には、「横浜支店.xlsx」にはパスワード列がありません。そのため、該当する列があるかどうかを18行目のif文とin演算子でチェックし、ある場合は2重リストに追加し、ない場合は空文字列("")を追加しています。
2重リストにデータを追加する19行目の部分も要注目です。変数colには「読み込み設定.xlsx」から取り出した列名、変数rowには各支店のExcelファイルから取り出した1行分のデータ(Seriesオブジェクト)が入っています。
そこで「row[col]」と書くと、支店データの中から特定の列名のデータを取り出すことができるのです。あとは2重リストにappendメソッドで追加するだけです。
ちなみに、書き込み先の「統合表.xlsx」をExcelで開いた状態でプログラムを実行すると、「PermissionError(ファイルのアクセス許可のエラー)」が発生します。ファイルを閉じてから実行するよう注意してください。
まずは実行してみよう
Pythonに興味があっても初めてだという方は、まず今回紹介したプログラムを動かして、Pythonの便利さを体感してみるといいでしょう。
次に、プログラムの説明を読みながら中身を眺めてみて「この行は何をしているか?」をなんとなく理解したうえで、ご自身の仕事を効率化するものに書き換えていくことをおすすめします。
次回はWebページから自動で情報を取り出してExcelファイルに表示する方法を紹介します。
記事をマイページに保存
できます。
無料会員登録はこちら
ログインはこちら
印刷ページの表示はログインが必要です。
無料会員登録はこちら
ログインはこちら
無料会員登録はこちら
ログインはこちら