書籍1:仕事がはかどるPython&Excel自動処理「改訂2版」

めんどうなコピペや手作業が一瞬で終了!本書は「PythonによるExcel操作の自動化」のアイデアを目的別に多数集めた1冊です。openpyxlを利用したブックやシート、セルや行列を操作するといった基本的なプログラミングはもちろん、「表の見た目を整える」「グラフを作成する」「ブックの体裁を一度に整える」「複数のシートから集計シートを作成する」といった、身近な業務を想定した用例を豊富に用意してあります。

概要

「PythonによるExcel操作の自動化」を集大成
・ブックやシート、セルや行列を操作する
・表の見た目を整える
・グラフを作成する
・ブックの体裁を一度に整える」
・複数のシートから集計シートを作成する
などなど、身近な業務を想定した用例を豊富に用意!
Pythonライブラリとの連携方法も詳しく解説しています。

どのサンプルも短くて簡単に書けるものが多数のため、
アレンジもしやすく、初心者にもやさしい内容です。

「データが多すぎて手作業では時間がかかる…」
などと日常業務で思ったことがあるのなら、
Pythonによる自動化に挑戦してみてください!

使用エディタ:VSコード
使用ライブラリ:インストールする場合はターミナルから pip install ライブラリ名
>pip install openpyxl(PythonからExcelを操作する)
>pip install pandas(CSVファイルを扱うデータ解析用)
>pip install Beautifulsoup4(Webスクレイピング)
>pip install Requests(HTTPリクエストの送受信)
>pip install Pillow(Excelに画像を貼り付けるための画像処理ライブラリ)

サンプルプログラム(約68.4MB)のダウンロードは以下から。https://book.impress.co.jp/books/1123101155

目次

Chapter 1 PythonでExcelを操作する前に

001 Python&Excelがなぜよいのか
002 Pythonをインストールする
003 Visual Studio Codeをインストールする
・ターミナルの使い方を覚えること Ctrl+@で切り替え
・VS Codeの「実行時ディレクトリ」設定をONにする。詳しくはこちら
004 Pythonのプログラムを実行する
005 サードパーティ製パッケージをインストールする
・ターミナルからインストールできる。「openpyxl」など。1回だけでよい!
006 Pythonのプログラムをデバッグする

Chapter 2 PythonによるExcel操作の基本

007 Excelファイルの操作を行えるライブラリopenpyxl
008 複数のブックを一発で作成する
・作成するブックの数をターミナルで聞いてくるので数字を入力する。
009 特定のシート数のブックを作成する
010 複数ブックのセルを取得して一覧にする
011 複数シートの名前と見出しの色を一括で整える
・色を変更して実施OK 0000FF→FF0000
012 過去資料のシート数を集計して作業量を見積もる
013 特定の名前のシートを移動する
014 自分の作業用に作成したシートを一括削除する
015 当日分の議事録シートを自動で作成する
・議事録_変更後.xlsxに新しい日付のシートをコピーして追加する
016 顧客に送付する際にブックやシートを保護する
017 別ブックへの転記を自動化する
018 行・列の非表示を一括で解除する
019 3行おきに空白行を挿入する
020 セルのメモから指摘一覧を作成する
021 名前を付けたセルを読み込む
022 数式をセルに設定する
・合計.xlsx、作業時間.xlsx、作業時間表.xlsx、粗利.xlsx、売上.xlsx
023 変わる可能性がある箇所をパラメーターにする
024 実行結果をわかりやすくするためにログを出力する
025 指定した日時にプログラムを実行する

Chapter 3 表の見た目を素早く整える

026 文字の書式を統一する
・文字フォントを「MS P明朝」色「赤」サイズ「18」スタイル「太字」
・red_font = Font(name=”MS P明朝”, color=”FF0000″, size=18, bold=True)
027 罫線を統一する
028 列の幅を調整して表を見やすくする
029 セルの色・文字の配置を整えて表を見やすくする
030 セルの表示形式を設定する
031 セルの書式をコピーする
・Pythonの標準ライブラリ「copy」を利用。インストール不要
032 特定のセルや行に色を付けて強調する
033 データの入力規則を設定する
034 スクロールしても表の見出しを常に表示する
035 相手に合わせて表示する行・列を最適化する
036 表の見出しをセル結合する
037 表を特定の位置へ移動する
038 集計しやすい表を作成する

Chapter 4 グラフでデータを可視化する

039 CSVファイルを読み込んでグラフを作成する
・CSVファイルを扱うのでpandasライブラリをインストールする。>pip install pandas
040 グラフの体裁を整えて見やすくする
041 目的にあったグラフを作成する

Chapter 5 PythonによるExcel操作の応用

042 納品するブックの体裁を一度に整える
043 申請書を一発で初期状態にする
044 複数のシートから「集計」シートを作成する
・openpyxlはエクセルを開いているとPermissionErrorが出るので注意
045 指定した人数分ブックをコピーする
046 決まった組み合わせの書式を適用する
047 対象のシートにジャンプする「目次」シートを作成する
048 大量の画像を1つのブックにまとめる
・画像の置いてあるtestフォルダのパスを変更して▷OK path = Path(“c:/test”)
049 動画のサイズと再生時間をブックに書き出す
050 ブック名を一括で変更する
051 大量のブックを月別にフォルダー分けする
052 ブックのパスをまとめて引き継ぎ資料を作成する

Chapter 6 ライブラリでテキストデータの処理を自動化する

053 CSVファイルを前処理してExcelに出力する
054 JSONファイルをExcelに出力して見やすくする
055 HTMLのテーブルを抜き出してExcelに出力する
・ライブラリのインストールが必要 pip install lxml html5lib bautifulsoup4
・url = “https://py.k-hp.com/test/”
・dfs = pd.read_html(url, match=”品名“)
056 全角・半角の表記ゆれをなくす

Chapter 7 ライブラリでデータの収集を自動化する

057 Webスクレイピングで収集したデータをまとめて資料を作る
・URLを変更して画像取得OK s057gフォルダ中の→booklist_img.py
・url = “https://py.k-hp.com/test/”
058 ExcelからWebページへの転記を自動化する
059 Web APIで収集したデータをまとめて資料を作る

Appendix1 Pythonチートシート

060 Pythonの基本文法
061 組み込み関数

Appendix2 トラブルシューティング

062 エラーを解決するポイント
063 よく発生するエラーと解決方法
・PermissionError、AttributeError、ModuleNotFindError他
openpyxlメソッド・関数一覧
索引
本書サンプルプログラムのダウンロードについて

コメント