Smart AI Life Knowledge Base

Office自動化

生成AI、ローカルLLM、スマートホーム自動化で日々の暮らしをゆたかに整える実践ドキュメント。

  1. Smart AI Life
  2. 記事一覧
  3. Office自動化

裏でファイルを作るな!起動中ExcelをApple Eventsで直接カタカタ操作する「excel-live」

Mac上のMicrosoft Excelと直接通信。数式入力からフォーマット調整、グラフ生成まで、まるで専属アシスタントが画面を操作する新体験。

🚀 生成AI×リスキリングSponsored / PR
📊 実践MCP徹底解説シリーズ #01

裏でファイルを作るな、目の前の画面を動かせ!
excel-live で開いているExcelをAIに直接操縦させる技術

〜Apple Events連動でセル書き込み、数式埋め込み、1,413行カード照合まで〜

ぽトル アイコン
POTTLE
筆者:ぽトル(Pottle)| 省エネ脱力パンダ
「人間がチマチマセルを塗るな、機械に勝手に集計させろ」が信条。プログラミングはちょいかじりですが、MacのデスクトップアプリをAIに直接操縦させるバイブコーディングを実践中🐼💤

どうも、ぽトル(Pottle)です。

PythonでExcelを自動化しようとすると、たいていopenpyxlやpandasで「新しい.xlsxファイルを保存して、それを人間がクリックして開いて確認する」という流れになりますよね。

でも、正直それって面倒くさくないですか?
「いま開いているこのシートの、この行に数式を入れてほしい」「この列と別のデータを照合してハイライトしてほしい」と、目の前の画面を直接動かしてほしいのが人間の本音です。

そこで導入したのが、macOSのApple Eventsをフル活用して起動中のMicrosoft Excelをリアルタイム直接操作するMCPサーバー「excel-live」です!


1. excel-live の仕組みと導入手順

excel-liveは、macOSのScripting Bridge / AppleScript経由で、起動しているMicrosoft Excelのオブジェクトモデルにアクセスします。ファイルのインポート・エクスポートを挟まず、開いている画面上のセルを直接読み書き・着色できます。

導入コマンドと環境設定:

PYTHON
# 仮想環境を作成して FastMCP をインストール
python3 -m venv ~/.mcp/macos-excel-mcp
source ~/.mcp/macos-excel-mcp/bin/activate
pip install fastmcp
  

🛠️ 使える主なツール群:

  • excel_get_app_info:起動中のExcelやアクティブなワークブック情報を取得
  • excel_write_range:指定セル範囲に一括で値や2次元配列を書き込み
  • excel_set_formula:SUM、VLOOKUP、IFなどのExcel関数をセルに埋め込み
  • excel_format_range:背景色、フォント太字、罫線などのスタイルを瞬時適用
  • excel_extract_used_range:使用されている範囲のデータを瞬時に全件読み出し
⚙️ 設定ファイル(~/.gemini/config/mcp_config.json)
PYTHON
"excel-live": {
  "command": "~/.mcp/macos-excel-mcp/bin/python",
  "args": [
    "tools/excel_live/server.py"
  ]
}

Pythonからの直接呼び出し・検証コード例:

PYTHON
import subprocess
import json

AppleScriptでExcelのアクティブセルに値を書き込むコア処理

def write_excel_cell(cell: str, value: str): script = f''' tell application "Microsoft Excel" set value of range "{cell}" of active sheet of active workbook to "{value}" end tell ''' subprocess.run(["osascript", "-e", script], check=True) print(f"✅ Excelのセル {cell} に '{value}' を直接書き込みました")

テスト実行(Excelが起動している状態で実行)

write_excel_cell("A1", "Smart AI Life 自動入力")

📦 GitHubで全コード公開中
本記事で紹介したexcel-liveのFastMCP完全サーバーコードはGitHubリポジトリで公開しています。
GitHubを見る →

2. 世間一般のビジネス活用事例

🏢 業務での代表的なユースケース

  • 月次売上レポートの瞬時整形: システムから吐き出された生CSVを開いた状態で「見出しを濃紺にして、合計行にSUM関数を入れて前月比を計算して」と指示するだけで数秒で完成。
  • データクレンジング: 住所の表記揺れや全角半角の混在をAIが画面上で直接正規化。
  • 条件付き書式の自動設定: 予算未達の行を赤背景、達成行を緑背景に色分け。

3. 🐼 我が家のリアル活用事例:1,413行のウルトラマンCGカード台帳の爆速照合!

我が家では、子供と一緒に集めている「ウルトラマンカードゲーム(CG)」のコレクション管理台帳(Excel・1,413行)にフル投入しています。

🔥 実際にAIに投げた指示:

「デスクトップで開いてるウルトラマンカード一覧のシートを読み取って、公式サイトの最新API(1,339枚)と突合して。未保有のカードの行を薄い黄色にして、E列に『未所持』のフラグを入れて!」

AIはexcel_extract_used_rangeで画面上の1,413行を0.5秒で読み取り、APIデータとメモリ上で照合。その後、該当する行だけをexcel_format_rangeとexcel_write_rangeでポンポンとハイライトしていきました。
手作業なら半日かかる照合が、私はお茶を飲んでぼーっとしている間の数十秒で終了。重複買いの無駄遣いもゼロになりました!

🐼 ぽトルのまとめ

「AIにファイルを作らせてダウンロードする」のではなく、「人間が見ている作業画面をAIに直接手伝ってもらう」。この感覚は一度体験すると病みつきになります。Macユーザーの方はぜひ導入してみてください!

🚀 生成AI×リスキリングSponsored / PR