MENU
Archives

PythonでExcelを操作する方法を解説!Python in Excelとは?

「PythonとExcelをどのように組み合わせて使うのか知りたい!」
「PythonとExcelを活用することでどういうメリットがあるのだろうか?」

Pythonでデータ分析やマクロ処理の業務を行ったり、Excelでデータ管理や帳票作成の業務を行うと、PythonでExcelを操作したり、Pythonの分析をExcelに埋め込んだりできたら良いなと考えることはないでしょうか。

PythonでExcelを操作するには、Python in Excelという2023年8月にリリースされたExcel上でPythonを実行する機能を使用するか、PythonのライブラリをインストールしてExcelを操作する内容のコーディングをするかの2通りの方法があります。本記事ではその2通りの方法についてコードも交えながら紹介します。

目次

Python in Excelとは

Python in Excelとは、2023年8月にリリースされたExcel上でPythonを実行する機能で、セルにPythonを直接入力すると、Pythonの計算がMicrosoftクラウド上で実行され、結果がワークシートに返されます。
Excel in PythonではAnacondaという有名なPythonライブラリが付属しています。

Excel in Pythonを使用するにはいくつか条件があります。

・Microsoft 365 Insider Programへの参加
Microsoft 365 Insider Programは、製品版に導入される前のプレビュー機能をテストして動作を確かめることが可能なプログラムで、加入するには「Microsoft 365」サブスクリプションが必要です。(Office2021などの買い切り版では不可)

・Excel for Windowsで使用可能
Excel for MacやExcel on the webでは使用できません。

Python in Excelの使い方

Python in ExcelはMicrosoft 365 Insider Programに参加し、ベータ チャネルを選択した状態で使用可能です。
まずはa.b.いずれかの方法でPythonの入力を有効化します。
a. セルを選択し「数式」タブで「Pythonの挿入」を選択する。
b. セルで関数「=PY()」を使用してPythonを有効にする。

セルでPythonが有効になると、そのセルにPYアイコンが表示されます。

PythonにExcelのセルと範囲を組み合わせるには、x1()関数を使用します。x1()関数は、範囲、テーブル、クエリ、名前などのExcelオブジェクトを受け入れます。
x1()関数を使用してPythonセルに参照を直接入力することができます。
例えばセルA1を参照するにはx1(“A1”)と入力し、範囲B1:C4にはx1(“B1:C4”)と入力します。

x = x1(“A1”)
y = x1(“B1”)

x + y

このようにPythonセルに入力すると、A1セルとB1セルを足し算した結果を表示します。

Python in Excelの使い方② グラフの作成

Anacondaには有名なPythonライブラリが含まれており、例えばmatplotlibを使えば簡単にグラフを作成することができます。
Irisフラワーデータセットと呼ばれる機械学習データ セットのサンプルを使用して、散布図を作成します。

  1. matplotlibライブラリのインポート
     次のステートメントでmatplotlibをインポートして、pltで参照できるようにします。
     import matplotlib.pyplot as plt
  2. Pythonセル上でmatplotlib散布関数を使用し、引数としてirisデータセットのsepal_length列とsepal_width列を入力します。
     plt.scatter(xl("Table1[sepal_length]"), xl("Table1[sepal_width]"))
  3. 散布図にラベルとタイトルを追加します。
     # Label the x and y axes of the plot.
     plt.xlabel('sepal_length')
     plt.ylabel('sepal_width')  # Add a title to the plot.
     plt.title('Sepal length and width analysis')
  4. Python数式をコミットするとPythonは散布図の視覚化をイメージオブジェクトとして返します。

Python in Excelで使用できる有名なライブラリ

Python in Excelで使用できるライブラリについてよく使用されるライブラリを紹介します。

・beautifulsoup4
画面スクレイピング用に設計されたPythonライブラリ。ライセンス: MIT

・Matplotlib
Pythonでパブリケーション品質のグラフと図形を作成します。ライセンス: PSF

・NumPy
数値、文字列、レコード、オブジェクトの配列処理を提供します。ライセンス: BSD-3-Clause

・pandas
データ構造とデータ分析ツールを提供します。ライセンス: BSD-3-Clause

・scikit-learn
機械学習とデータ マイニング用のPython モジュールのセット。ライセンス: BSD-3-Clause

・SciPy
Python用の科学ライブラリ。ライセンス: BSD-3-Clause

・seaborn
統計データ視覚化ライブラリ。ライセンス: BSD-3-Clause

PythonのライブラリをインストールしてExcelを操作する内容のコーディングをする方法

Python in Excelともう一つの方法である、PythonのライブラリをインストールしてExcelを操作する内容のコーディングをする方法をご紹介します。
まずは下記a. b.のようにPythonを実行できる環境の準備が必要です。

a. 自分のパソコンにPythonをインストールする
b. Google ColaboratoryなどPythonのコーディングが可能なクラウドサービスを利用する

次にExcelを操作できるPythonライブラリをインストールします。
Excelを操作できるPythonライブラリには以下のようなライブラリが存在します。

・OpenPyXL
・pandas
・xlwings
・Matplotlib

OpenPyXLでのコーディング

OpenPyXLでExcelを操作するには以下のようなコーディングを行います。

  1. ライブラリのインポート
     import openpyxl as op
  2. Excelファイルの新規作成
     # Excel ファイル(ワークブック)の新規作成
     wb = op.Workbook()  # ワークシートの有効化
     ws = wb.active  # Excel ファイルを Google ドライブに保存
     wb.save("/content/drive/MyDrive/python-excel.xlsx")
  3. Excelファイルへの書き込み
     # A1 セルにテキストを書き込み
     ws["A1"] = "Hello!!"  # 保存
     wb.save("/content/drive/MyDrive/python-excel.xlsx")
  4. Excelファイルの読み込み
     # Excel ファイル(ワークブック)の読み込み
     wb = op.load_workbook("/content/drive/MyDrive/python-excel.xlsx")  # ワークシートの有効化
     ws = wb.active  # value という変数に A1 セルの内容を格納
     value = ws["A1"].value  print(value)

まとめ

本記事ではPythonでExcelを操作する方法について解説しました。
Microsoft 365 Insider Programへの参加が必要なもののPython in Excelは便利ですね。
Excelを使用するデータ管理系の業務はPythonを一緒に使用することで、より効率化できます。
本記事がPythonでExcelを操作する方法の理解の一助になったのであれば幸いです。

FineReportとは?機能や特徴、できることについて

「FineReportの機能について知りたい!」
「FineReportを活用することでどういうメリットがあるのだろう?」

近年データ分析の需要の高まりとともに様々なデータ基盤やプラットフォーム、BIツールが企業から提供され、どのツールを導入するべきか迷われたことのある方も多いと思います。
本記事ではデータ統合基盤、データ可視化、ローコードでのシステム構築など様々な機能がオールインワンに集結した、BIツールであるFineReportをご紹介します。

FineReport とは

FineReportとは、中国のビッグデータ企業である帆軟(Fanruan)ソフトウェア株式会社が提供するBIツールです。
帆軟はGartnerのレポーティングプラットフォーム部門で中国で唯一入選したり、Forbesの中国非上場潜在力企業トップ50にBIメーカーとして唯一入選するなどビッグデータ企業として国際的な評価を得ています。

FineReportのBIツールとしての特徴は、データ可視化という本来のBIツールの機能に留まらず、データ統合、帳票設計・運用、データ入出力、管理ポータルといった企業でのデータ管理に必要な機能がFineReport1つに集約されているという点です。

実際にその汎用性とパフォーマンスの高さから、下記のように事業形態問わず様々な業界の大手企業から採用されています。

  • 銀行
    中国人民銀行、中国銀行
  • 小売
    P&G、Garrefour
  • IT
    HUAWEI、VIVO

日系企業でも、HONDA、NEC、YAMAHA、コニカミノルタなどの有名企業がFineReportのソリューションを活用しています。

FineReportが果たす役割

FineReportを導入することによってBIによるデータの分析やモニタリングに留まらず、日々のデータ管理系の業務効率化に役立てることができます。

  • 開発部門にとって
    GUI画面で帳票やダッシュボードの開発が可能です。Windows、Linuxなどの環境にデプロイが可能で、業務システムと容易に連携ができます。
  • 業務部門にとって
    日々の帳票の作成業務から解放され、よりクリエイティブな業務へ注力することが可能になります。
  • 経営管理者にとって
    各システムや帳票を一元管理することが可能で、リアルタイムにデータの分析、適切な施策の実施が行えるようになり、経営のスピードと合理性を高めることに寄与します。

FineReportの機能・特徴・できること

FineReportの機能について解説します。

データ統合

マルチデータソース対応で、複数のデータソースを関連づけて、1枚のダッシュボード上に分析データを表示することが可能です。特に大企業ほどERPやCRMなど様々なシステムを導入していることが多いため、それらのデータを一元管理、可視化できることは大きなメリットです。

帳票設計、運用

Excelライクな帳票をドラッグ&ドロップで設計することが可能です。
請求書、明細書、発注書などのフォームを作成可能で、仕様変更にも素早く対応できます。

BIダッシュボード

マルチデータソース、自由なレイアウト、アニメーションなどの視覚効果と機能は充実していて、他製品のBIツールと比較してもリッチなダッシュボードが作成可能です。

データの入出力

CSVやExcelファイルなどの入力や、あらかじめデザインした入力フォームでのデータの入力、PDFやExcelなどの出力が可能です。
データの有効性チェックや承認ワークフローの実装もできます。

管理ポータル

帳票、ユーザー、権限、システムなどの管理を一括で行え、総務、人事、財務といった部門に必要な機能を提供します。

デプロイと統合

FineReportの帳票やダッシュボードをWebアプリとしてデプロイすることが可能です。
デプロイ後、他のWebサイト上に組み込んだり、SSO(シングルサインオン)を通して業務システムとの統合を実現できます。

モバイルBI

モバイルでの表示に適した画面でデータの表示が行えます。
他製品のBIツールだとモバイルでの活用までは考えられていないものも多いため、FineReportの特徴的な機能です。

FineReportのサポートや料金について

FineReportのサポートや料金について紹介します。
まずFineReportには無料版とビジネス版が存在し、無料版では3ヶ月の無償使用が可能です。
料金体系について、機能・サーバー数・アクセスユーザー数によって決定されるため、問い合わせが必要です。

サポートについて、導入を検討されている場合、データを提供することで無料でサンプルダッシュボードを作成してもらうことができます。
また導入前には無償の基本トレーニングがあり、導入後はニーズに応じて有償のトレーニングを受けることが可能です。

このように実際に導入する前に、サンプルや無料版で十分に使用感を試せることが特徴です。

まとめ

本記事ではFineReportについてその特徴と機能について解説しました。

データ統合、帳票作成、BIの機能を1つのツールで実現できる製品は珍しく、データ管理周りの業務を全て賄えるという点で、他BIツールと比べて汎用性の高さが際立ちます。また自由なフォーマットで帳票を作成できる点など、業務形態を問わずあらゆる企業や部門で活用できるところも魅力的です。
FineReportの導入をお考えの場合、一度無料サンプルの作成や無料版の利用を検討されてみてはいかがでしょうか。

KUIXではただ導入・開発するだけでなく、導入後の利活用を実現することに着眼した、データレイク・DWH・データマート・BIツールの選定・導入からレポート作成、運用、啓蒙・展開までトータルのコンサルテーションなどを行っています。
「データマート/データレイク/DWH/BIツールを導入したい」
「すでに導入しているがデータ活用、展開が進んでいない」など
お困りの方は、ぜひお気軽にご連絡ください!お問い合わせはこちらから

よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!

この記事を書いた人

目次