PythonでExcelファイルをPDFに変換する方法を現役エンジニアが解説【初心者向け】
初心者向けにPythonでExcelファイルをPDFに変換する方法について現役エンジニアが解説しています。今回は、PythonでExcelファイルを扱うために、win32comというモジュールを使用していきましょう。
テックアカデミーマガジンは受講者数No.1のプログラミングスクール「テックアカデミー」が運営。初心者向けにプロが解説した記事を公開中。現役エンジニアの方はこちらをご覧ください。 ※ アンケートモニター提供元:GMOリサーチ株式会社 調査期間:2021年8月12日~8月16日 調査対象:2020年8月以降にプログラミングスクールを受講した18~80歳の男女1,000名 調査手法:インターネット調査
PythonでExcelファイルをPDFに変換する方法について、TechAcademyのメンター(現役エンジニア)が実際のコードを使用して、初心者向けに解説します。
Pythonについてそもそもよく分からないという方は、Pythonとは何なのか解説した記事を読むとさらに理解が深まるでしょう。
なお本記事は、TechAcademyのオンラインブートキャンプPython講座の内容をもとに紹介しています。
今回は、Pythonに関する内容だね!
どういう内容でしょうか?
PythonでExcelファイルをPDFに変換する方法について詳しく説明していくね!
お願いします!
ExcelファイルをPDFに変換する方法
ExcelファイルをPDFに変換する方法はいくつか存在しています。
最も一般的な方法は、Excelの「ファイル」→「エクスポート」→「PDF/XDSの作成」という手順を踏むことでExcelから直接PDFに変換するというものです。
しかし、この方法では、多数のExcelファイルをPDFに変換したい場合、1つ1つ変換を行なうため、膨大な時間が掛かることも少なくありません。
そのため、Pythonを使ってプログラミングによってExcelファイルからPDFに変換すると良いでしょう。
PythonでExcelファイルを扱うには、win32comと呼ばれるモジュールを使います。
このモジュールはデフォルトでは入っていないので、pipでインストールしましょう。
pip install pywin32
続いて、ExcelファイルをPythonで読み込むには、適当な変数名を用意(ここでは”excel”)して、エクセルファイルを開くための設定を行ないます。
excel = win32com.client.Dispatch("Excel.Application") #Excelを操作するための設定 file = excel.Workbooks.Open('Excelファイルの絶対パス')
これで、Excelファイルを開くことができました。
開いたファイルをPDFに変換する場合、シートをインデックスで指定し(左から順に1から始まる数字。複数の場合はリスト型にする)、下記のように記述してみましょう。
file.WorkSheets(シートのインデックス).Select() file.ActiveSheet,ExportAsFixedFormat(0, 'PDFファイルの保存先の絶対パス') #第一引数の0はPDFを指定するもの。
これで、ExcelファイルをPDFに変換できました。
実際に書いてみよう
プログラムを記述し、ExcelファイルのPDF化を行ないましょう。
import win32com.client #win32comをインポートするだけでは上手くいかないので注意!! excel = win32com.client.Dsipatch("Excel.Application") file = excel.Workbooks.Open("エクセルファイルの絶対パス(拡張子は.xlsx)") file.WorkSheets(PDF化したいシートのインデックス).Select() file.ActiveSheet.ExportAsFixedFormat(0,"保存先の絶対パス(拡張子は.pdf)")
これを実行すれば、好きなExcelファイルをPDFに変換できることが可能です。
PDFをExcelファイルに変換する方法
ここでは、PDFをExcelファイルに変換する方法を解説します。
PDFをExcelファイルに変換する場合、表になっていてExcel形式に変換できるものに限られる点は注意が必要です。
変換方法は、「PDFファイル」→「CSVファイル」→「Excelファイル」という手順で行ないます。
この場合、CSVファイルに変換し、pandasを使えばかんたんにExcelファイルに変換することができるでしょう。
「PDF」→「CSVファイル」の変換には、tabulaモジュールのread_pdf関数を使います。
インストールされていなければ、下記のコードで実行してください。
pip install tabula-py
インストールが完了したら、下記のコードでPDFからExcelファイルに変換できます。
from tabula import read_pdf import pandas as pd file = read_pdf("PDFファイルの絶対パス", pages = 1) file.to_excel("保存先のExcelファイルの絶対パス")
まとめ
この記事では、Pythonを使ってExcelファイルとPDFファイルを相互に変換する方法について解説しました。
事務処理等で役に立つことがある実用的な方法なので、有効に活用してみてください。
執筆してくれたメンター
メンターOS
AIプログラミングを使って開発を行う。 プログラミング歴は約3年でPythonは割と得意。 好きな物理理論は一般相対性理論で動物も好き。 |
PythonでExcelファイルをPDFに変換する方法がよく分かったので良かったです!
ゆかりちゃん、今後も分からないことがあったら質問してね!
分かりました。ありがとうございます!
TechAcademyでは、初心者でも、Pythonを使った人工知能(AI)や機械学習の基礎を習得できる、オンラインブートキャンプを開催しています。
また、現役エンジニアから学べる無料体験も実施しているので、参加してみてください。