「ExcelでPythonを動かしたいけど、環境構築でつまずいてやめた」という経験はありませんか?
この記事で紹介するxlwings Liteは、Python本体のインストールもpipも要らずに、Excelの中でPythonを動かせる無料アドインです
公式は、これをVBAの体験を現代化するものと位置づけていて、VBAを触ってきた方にもなじみやすい立ち位置になっています
ただ、名前が似ている「pip版のxlwings」や、マイクロソフト純正の「Python in Excel」と混同しやすいのも事実です
この記事では、まずそこの違いをほどいてから、料金・できること・制約・VBAとの関係・導入手順までを、初心者の方向けに広く浅くまとめていきます
ジャベ雄「環境構築が要らないPython」って、最初のハードルがぐっと下がります
この記事は2026年7月時点の情報をもとにまとめています
xlwings Liteは更新が活発なので、料金やバージョン番号は変わる可能性があります、最新は公式サイトで確認してみてください
xlwings Liteとは Excel内で動くPython
結論から言うと、xlwings LiteはPython本体をインストールしなくてもExcelの中でPythonを動かせる無料アドインです
Excelにアドインを1つ追加するだけで、Pythonでカスタム関数を作ったり、pandasでデータを処理したりできるようになります
なぜPython本体が要らないのかというと、xlwings LiteはPyodideという仕組みを使っているからです
Pyodideは、ざっくり言うと「ブラウザの中で動くPython」で、WebAssembly(ウェブブラウザが理解できる低レベルな実行形式)の上でPythonを走らせます
最近のExcelアドインは、内部にブラウザの部品を持っています
その中でPythonが動くので、パソコンにPythonを入れていなくてもコードが実行できる、という理屈です
pip版のxlwingsとは別物です
ここが最初につまずきやすいポイントです
同じ「xlwings」という名前でも、昔からあるpip版のxlwingsと、今回のxlwings Liteは仕組みが違います
pip版のxlwingsは、パソコンにインストールしたPython本体とExcelを橋渡しするライブラリです
pip installでの導入とPython 3.9以上が必要で、「外にあるPythonからExcelを操作する」スタイルになります
一方のxlwings Liteは、Excelの中でPythonが完結するので、Python本体もpipも要りません
同じブランドですが、「外のPythonと繋ぐ(pip版)」か「Excelの中で完結する(Lite)」かで役割がまったく違う、と押さえておくと混乱しません
- pip版xlwings … 外のPython本体とExcelを繋ぐライブラリ(pipとPythonが必要)
- xlwings Lite … Excelの中でPythonが完結するアドイン(Python本体もpipも不要)
通常のPythonをパソコンに入れて使う方法が気になる方は、Pythonのインストール手順を解説した記事もあわせてどうぞ
xlwings Liteは、その導入自体が要らない点が大きな違いです
コードはワークブックの中に保存される
xlwings Liteで書いたPythonコードは、そのExcelのワークブックの中に一緒に保存されます
だから、ワークブックを誰かに渡すと、受け取った人も同じxlwings Liteアドインを入れればそのまま動かせます
VBAでいう「マクロ有効ブック」に近い立ち位置ですが、コードの実行を担うのはアドインそのものです
コードだけ入っていてもアドインが無いと動かないので、配布相手にもアドインの導入は必要になります



「コードがブックに同梱される」から、配布が楽なんです
対応環境と料金 買い切りOfficeでも無料
xlwings Liteの魅力は、対応する環境の広さと料金の分かりやすさです
まず対応環境から見ていきます
公式によると、xlwings LiteはWindows・macOS・Excel for the web(ブラウザ版)で動きます
しかもMicrosoft 365だけでなく、買い切り版(Office 2021以降)にも対応しています
ここが後で出てくるPython in Excelとの大きな差です
Python in Excelはサブスクリプション専用ですが、xlwings Liteは買い切りのOfficeでも使えるので、月額を払っていない方にも門戸が開いています
さらに、無料のオンライン版Excel(office.comにブラウザでログインして使う版)でも試せます
WindowsではOffice 2019も特定の条件付きで対応していますが、その条件の中身は本記事では未確認なので、詳しくは公式の対応状況ページを確認してみてください
ブラウザの部品を内部で使う仕組み上、比較的新しいバージョンのモダンブラウザが必要です
macOSのデスクトップ版はmacOS 13(Ventura)以降が目安とされますが、この記事の読者はWindowsが中心なので、Mac要件は軽く触れる程度にとどめます
ストア版は個人も商用も無料
料金はとてもシンプルです
Excelのアドインストア経由で入れるxlwings Liteは、個人利用も商用利用も無料で、登録やログインも要りません(2026年7月時点)
公式FAQでも「制限なく個人・商用で使える」と明記されています
将来ずっと無料であることを保証する記述までは無いので、あくまで2026年7月時点では無料、という前提で読んでください
有料になるのはセルフホスト版(自前のサーバーで動かす版)だけです
これはxlwingsの有料プランに含まれていて、公式の料金ページではProfessionalの年1,600ドルからとなっています、金額はプランや条件で変わるので正確な額は公式の料金ページで確認してみてください
ふつうにストアから入れて使う分には、個人でも仕事でも料金はかかりません
「セルフホスト版のみ有料」という整理だけ覚えておけば大丈夫です



買い切りOfficeで無料、はVBA派にとって嬉しい条件です
Python in Excelとの違いを比較表で整理
次に多い混同が、マイクロソフト純正のPython in Excelとの違いです
どちらも「ExcelでPythonを動かす」機能ですが、中身はかなり性格が違います
いちばん大きいのは実行される場所です
Python in Excelはマイクロソフトのクラウド(Azure)上で計算され、実行のたびにワークブックの内容がクラウドへ送られます
対してxlwings Liteは、利用者のパソコン上で計算が完結します
そのため原則としてデータが外部に送信されません
ただし1つだけ例外があります
カスタム関数で画像(図)を返す場合は、その処理でデータが外に出ます
これはセルフホストにすると回避できます
「xlwings Liteはデータを一切外に出さない」と言い切ると不正確です
正しくは原則は外に出ない、ただしカスタム関数で画像を返す場合だけは例外(セルフホストで回避可)という理解が安全です
料金・対応Excel・機能面も含めて、主な違いを1枚の表にまとめます
横に長いので、スマホでは横スクロールして見てください
| 項目 | Python in Excel(マイクロソフト) | xlwings Lite |
|---|---|---|
| 実行場所 | Azureクラウド(実行のたびブックを送信) | 利用者のPC・ブラウザ内で完結 |
| データ送信 | クラウドへ送信あり | 原則なし(※画像を返すカスタム関数は例外/セルフホストで回避可) |
| 料金 | 標準は365に付属/有料アドオンは月24ドル(年288ドル相当) | 無料(ストア版)、セルフホスト版のみ有料 |
| ライセンス要件 | Microsoft 365 専用 | 365 + 買い切り版(2021以降)+ 無料オンライン版 |
| Excelオブジェクト操作 | 不可 | 可 |
| カスタム関数(UDF) | 不可 | 可 |
| 使用回数の上限 | 非公開のクオータあり | 上限なし |
| コードの保存先 | PYセル(グリッド内) | ワークブックの中 |
料金の欄を補足します
Python in Excelは365のBusiness/Enterpriseなら標準の計算資源を追加料金なしで使えますが、高速な計算資源(プレミアムコンピュート)や計算モードの切替を得るための有料アドオンが月24ドル(1ユーザーあたり)です
この月24ドルという額は、マイクロソフトの解説記事で示されている数値です
年に直すと24ドル×12で年288ドル相当になります、なお、この額はマイクロソフトのライセンスFAQ本文に書かれているわけではない点も添えておきます
Excelのオブジェクトを直接触れるかどうか
VBAを触ってきた方に効くのが、この違いです
xlwings LiteはExcelのオブジェクトモデル(セルやシート・ブックをコードから直接操作する仕組み)にアクセスできます
VBAでRangeやWorksheetを直接触るあの感覚を、Pythonで再現できるイメージです
一方のPython in Excelはグリッドに数式のように書くスタイルで、オブジェクトを直接操作するタイプではありません、ここは質的な違いになります
結局どちらを選べばいい?
ここは私の見立てとしての整理です(公式が一文で断言しているわけではありません)
ざっくり、次のような使い分けが分かりやすいと思います
- データを外に出したくない・買い切り版や無料オンライン版のExcelを使う・自作関数やオブジェクト操作をしたい → xlwings Lite
- Microsoft 365を使っていて、クラウドの潤沢な計算資源を数式感覚で使いたい → Python in Excel
なお、公式の比較ページはxlwings側が書いたものなので、多少はLite寄りの見方になっている点は念頭に置いておくと公平です
Python in Excelの新機能まわりは、Microsoft 365のExcel新機能をまとめた記事でも触れているので、あわせて読むと全体像がつかめます
xlwings Liteでできること
ここからは、xlwings Liteで実際にできることを見ていきます
広く浅く言うと、Pythonの力をExcelの中に持ち込めるのがポイントです
できることを大きく並べると、次のようになります
どれも「Pythonでいつも書いていること」をExcelから使える、という方向性です
- カスタム関数(UDF) … 自作のワークシート関数をPythonで定義できる
- ストリーミング関数(RTD) … 値がリアルタイムに更新される関数を作れる
- Matplotlibでの作図 … Pythonでグラフを描いてExcelに返せる
- pandasでのデータ処理 … 表データの加工・集計をPythonで
- Excelオブジェクトの操作 … セルやシートをコードから直接いじれる
- Web APIへのアクセス … 外部サービスからデータを取ってくる
用語を1つ噛み砕いておきます
RTD(ストリーミング関数)は、株価のように随時変わる値を、関数の結果としてリアルタイムに更新し続けられる仕組みです、xlwings Liteでは2026年6月のアップデートで対応しました
UDF(ユーザー定義関数)は、自分で作るワークシート関数のことです
Pythonで書いた処理を、セルに =MYFUNC(A1) のように呼び出せるイメージだと思ってください
直近の目玉は、2026年7月1日の更新でMatplotlibの図の正式サポートが入ったことです
この機能はpip版xlwingsライブラリの0.36.8以上を必要とします(2026年7月時点)
バージョン番号は2種類あって混同しやすいです
アドイン版のバージョン(1.0.0系)と、pip版xlwingsライブラリのバージョン(0.36.8)は別系統の番号なので、分けて考えてください
簡単なカスタム関数のイメージも載せておきます
下は「引数を2倍にして返すだけ」の最小サンプルです(実際のコードはこの記事のあとで導入手順を追ってから書く流れになります)
from xlwings import func
@func
def double(x):
return x * 2このように書いておくと、Excelのセルで =DOUBLE(A1) のように呼び出せる、という感覚です
細かい書き方は更新で変わることもあるので、実際に使うときは公式のドキュメントも見てみてください



「Pythonの関数がExcelの関数になる」って、けっこう楽しいです
できないこと・注意点も先に知っておく
便利な一方で、xlwings Liteには苦手なことや制約もあります
期待して入れてから「あれ、動かない」とならないよう、先に押さえておきましょう
これらの多くは、土台であるPyodide(ブラウザ内で動くPython)の制約から来ています
1つずつ見ていきます
動かないライブラリがある(Polarsなど)
まず、すべてのライブラリが使えるわけではありません
公式の制約ページでは、Polarsは動作しないと明記されています
理由は、Polarsがマルチスレッド・マルチプロセッシング(複数の処理を同時並行で走らせる仕組み)に依存していて、現状のPyodideではそこがうまく動かないためです
データ処理でよく使われるpandasは使えるので、まずはpandasで組むのが無難です
「pandasの代わりにPolarsやDuckDBも使える」と紹介されることがありますが、Polarsは公式が動かないと明記しています
DuckDBの可否はこの記事では未確認なので、使えると決めつけずに実機で試すのが安全です
ほかにも、C言語で書かれた高速部分を持つパッケージは、Pyodide向けに特別なビルドが要ります
そのため、たとえばPyTorchのような重い機械学習ライブラリは、現状は使えないものに含まれます
メモリ・データベース・重い処理の制約
ほかにも押さえておきたい制約がいくつかあります
まとめて並べます
- メモリ上限は2GB … Pyodideの制限のため、大きなデータ処理には向かない
- データベース接続に制約 … TCP/IP接続が使えず、PostgreSQLなどへ直接繋げない(SQLiteは使える)
- デバッガが現状なし … 込み入った処理の追跡はしづらい
- Python・パッケージのバージョンは自由に選べない … Pyodideの配布に依存する
ざっくり言うと、軽い作業には向くけれど、重い処理や厳密なバージョン固定が要る業務には弱いという整理になります
大量データのゴリゴリした集計や、特定バージョンで固めたい本番処理は、別の手段のほうが向くこともあります
初回や新しいライブラリを入れるときはネットが要る
ここは誤解されやすいので分けて説明します
xlwings Liteの計算はローカルで完結し、データは外に出ません、ここは前に書いたとおりです
ただ、Pyodide本体や新しく使うPythonパッケージは、既定ではネット越しにダウンロードして取得します
そのため初回や新しいライブラリを入れるときはインターネット接続が必要です
「データが外に出ない」ことと「初回はネットが要る」ことは、別の話として両立します
だから「完全にオフラインで使える」と言い切るのは少し不正確で、完全なオフライン運用にはセルフホストなどの設定が必要になります



「計算は手元・取得はネット」と分けて覚えると混乱しません
VBAとの関係 乗り換えか併用か
VBAを使ってきた方が気になるのは、「これはVBAの後継なの?」という点だと思います
まず公式の言い方を正確に確認しておきます
公式サイトの表現は「VBAの体験を現代化する(brings the VBA experience into the modern age)」です
つまり「VBAはもうダメ」と切り捨てる言い方ではなく、VBAでやってきたことを、今どきの形で置き換えるという位置づけになっています
VBAと比べて良い点として整理できるのは、次のあたりです
いずれも個々の事実には裏付けがあります
- 言語がPythonなので、pandasなどの豊富なライブラリを使える
- Excelのオブジェクトモデルにも、Pythonからアクセスできる
- コードがワークブックに入るので配布しやすい
- 実行はローカル完結で、原則データが外に出ない
とはいえ、VBAがすぐに要らなくなるわけではありません
ここは私の見立てですが、当面は「乗り換え」より「用途で併用」が現実的だと思っています
理由はシンプルで、xlwings Liteには前の章で見た制約(重いライブラリが使えない・2GBメモリ・アドインが前提など)があるからです
すでにある膨大なVBA資産や、アドインを入れられない環境、軽いイベント駆動の処理では、VBAのほうが手堅い場面が残ります
これからVBAの基礎から触ってみたい方は、VBAのループ処理を解説した記事やVBAの変数と定数の記事から入ると流れがつかめます
VBAとPython、どちらも引き出しにあると選択肢が広がります



どちらか一択でなく、得意なほうを場面で使い分ける感覚です
xlwings Liteの導入手順
それでは導入手順です
登録もログインも要らず、アドインを入れるだけで使い始められます
下の手順は骨子です
ボタンの日本語表記はExcelのバージョンで少し変わるので、英語のボタン名も併記しておきます(実際の画面はこのあとキャプチャで確認できるようにします)
エディタにPythonのコードを書いて、実行してみます
まずは前に載せたような、小さなカスタム関数から試すと感覚がつかめます
ライブラリの追加はrequirements.txtに書く
pandasなど追加のライブラリを使いたいときは、pip installの代わりの操作があります
エディタのrequirements.txtタブに、使いたいパッケージ名を書き足すと、自動でインストールが始まります
編集したあとはxlwings Liteの再起動が要る点だけ覚えておいてください
「pip installの代わりにrequirements.txtに書く」と捉えると、pip版との違いがイメージしやすいです


合わなければ簡単に消せます
「アドイン」ボタン →「その他のアドイン」(More Add-ins)→「マイアプリ」(Manage your Apps)から、xlwings Liteの三点メニューで「削除」(Remove)を選べば外せます(表記はバージョンで変わります)



「入れるだけ・消すだけ」なので、まず試してみるのがおすすめです
コードはAIに書いてもらう手もあります
「Pythonのコードを自分で書くのはまだ不安」という方も多いと思います
そういうときは、やりたいことを日本語で伝えて、コードはAIに書いてもらうのも十分アリです
たとえば、次のような頼み方をすると、xlwings Lite用のカスタム関数の下書きが返ってきます
返ってきたコードは、内容を確認してから貼るのが安全です
xlwings LiteのカスタムUDFを作りたいです
・やりたいこと:(例)A1の金額に消費税10%を足して返す関数
・関数名:(例)ADDTAX
Python本体は使わずxlwings Liteで動く前提で、
@func デコレータを使った最小のコードを書いてください
書き込む前に、コードの内容を私に説明してから提示してくださいAIにコードを書いてもらう流れの雰囲気は、AIでアプリを作ってみた体験記でも紹介しています
「まず動かしてみる」に、AIはかなり相性が良いです
まとめ どんな人に向くか
最後に、xlwings Liteがどんな人に向くかを整理します
ここまでの内容をぎゅっとまとめると、次のようになります
- Python本体やpipの環境構築でつまずいた・そこを飛ばしたい方
- 買い切り版Officeや無料オンライン版のExcelでPythonを試したい方
- データを外に出したくない業務でPythonを使いたい方
- VBAの次の一手として、自作関数やオブジェクト操作をPythonでやってみたい方
逆に、大量データのゴリゴリした処理や、Polarsのような一部ライブラリ、厳密なバージョン固定が要る場面は苦手です
そこは無理せず、VBAや通常のPython環境と用途で使い分けるのが現実的だと思います
2026年7月時点では、更新がかなり活発なプロダクトです
2026年上半期だけでもストリーミング関数・オブジェクト操作・Python 3.14系への更新・Matplotlib対応と、短い間に機能が増えています
その分、まだ発展途上で仕様が変わりうる面もあります
料金やバージョン番号はこの記事の時点(2026年7月)のものなので、実際に使う前には公式サイトで最新を確認してみてください
環境構築のハードルなしにExcelの中でPythonを試せるのは、初心者の方にとって大きな一歩です
まずは無料のストア版を入れて、小さなカスタム関数から触ってみるのがおすすめです



「まず入れて、小さく試す」から始めると失敗しにくいです














コメント