3
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

NotebookLM × ChatGPT × Google AntigravityによるExcel帳票自動生成の実践

3
Posted at

はじめに

データ分析の成果物として、Excel帳票は依然として高い重要性を持つ。特に機密性の高いデータを扱う場合、分析結果を人間が手動で確認できる形式で出力できる点において、Excelは適切な媒体である。
一方で、帳票自体の設計および作成コストは高く、分析業務を阻害する要因となっている。本稿では、NotebookLM、ChatGPT、Google Antigravityを組み合わせることで、帳票作成プロセスを自動化した事例について記述する。

課題設定

データ分析において、結果を確認可能な形で提示することは重要である。多くの企業においてPDFやNotionよりも、Excelが実務上優先される状況が続いている。

しかし、Excel帳票をゼロから構築するためには、以下の工程が発生する。

  • シート構成の設計
  • 数式設計と検証
  • レイアウト調整
  • 評価時の手動検証

これらは分析業務における「見えないコスト」であり、意思決定速度を低下させる要因となっている。

解決アプローチ

本稿では、以下の流れで帳票の自動生成を実施した。

NotebookLM → ChatGPT → Antigravity → Excel出力

各ツールの役割は以下である。

ツール 役割
NotebookLM 情報収集と要点整理
ChatGPT 帳票要件化および仕様作成
Antigravity Pythonコード生成と実行
Excel 最終確認と品質担保

重要な点として、AIが帳票を生成し、人間が内容を確認する構造を採用した。
AIが設計と実装を行い、人間が安全性と正確性を担保することで、速度と品質を両立できると判断した。

Antigravityの概要

AntigravityはGoogleが提供する「agent-first IDE」であり、MCP(Model Context Protocol)を用いて複数のエージェントを並列動作させる設計となっている。
コード生成、テスト、実行、ブラウザ操作などを一つの環境で完結させることが可能である。

特筆すべき点として、Antigravity自体がExcelを直接生成する機能を提供しているわけではない。本事例では、Antigravity上でPythonコードを実行し、openpyxlpandasなどのExcel操作ライブラリを利用して.xlsxを生成している。つまり、Antigravityは実行環境として利用し、帳票生成はPythonによって実装している

技術スタック

NotebookLM
ChatGPT
Google Antigravity(Public Preview)
Python (openpyxl / pandas)

NotebookLMでドメイン知識を収集し、ChatGPTで仕様書を生成し、Antigravityで実装と検証を行う構造である。すべての工程を「チャット指示のみ」で実行可能である点は特徴的である。

実装例:アトリビュート分析帳票

実装テーマはアトリビュート分析である。

ECサイトにおける流入元が売上にどれだけ寄与したかを算出する効果検証手法である。

実装フロー

Step1: NotebookLMによる情報整理

論文・記事・資料を取り込み、要点をまとめたスライドを生成した。

image.png

Step2: ChatGPTによる要件化

スライドをchatGPTに読み込ませ、成果物としてエクセルを出力するよう要件定義書を作成。

Step3: Antigravityによる帳票生成

要件を読み込み、Pythonコードを生成し、Excel帳票を自動生成した。
単純にchatGPTで作成した要件定義の文章を入れた。

image.png

Step4: ダミーデータでの確認

機密性の観点から、ダミーデータで帳票を生成し、人間が内容を確認する方式を採用した。

結果

以下の成果が得られた。

  • Excel帳票の自動生成に成功した
  • 数式を含む複数シートが要件どおり生成された
  • グラフも自動で作成された
    image.png
    image.png

その他やってみたことでできたこと

  • VBAマクロの自動生成と検証が可能であった
  • ネットワーク分析の可視化も対応可能であった

実務で得られた知見

ダミーデータと文字コード

ダミーデータとして日本語を使用した場合、文字化けが発生する事例があった。
そのため、Excel内でデータ取得を行う方式がエンコードで文字化けが起こりにくい。

機密データの扱い

「テンプレートをダミーデータで構築し、本番データは最後に貼り付ける」方式が安全性と検証性の両面で有効であった。

TDD(テスト駆動開発)について

AntigravityによるTDDは有効であるが、統合テストにおいてトークン消費が大きい。
そのため、以下の方式が現実的である。

単体テスト:TDDを用いて複数回実施  
統合テスト:1〜3回に制限する  

GEMINI.mdを用いて汎用ルールを策定する。

Antigravityにはコード生成の際にルールを加えることができる。
以下のGEMINI.mdをグローバルルール(汎用ルール)として設定した。

# ルール
- 常に日本語で回答してください。
- 開発プロセスは単体テストはTDDで、統合テストはE2Eで行います。
- TDDの際に、単体テストは最小限のコードで実装してください。
- TDDのコードは、複数回の実装を試みた結果を考慮して、最適なコードで実装してください。
- E2Eのコードは1~3回の実装を試みた結果を考慮して、最適なコードで実装してください。TDDほど多く試みる必要はありません。

考察

本事例では、「帳票設計→帳票実装」という工程が自動化可能であることを確認した。
NotebookLM、ChatGPT、Antigravityの分業により、分析者が本来注力すべきである「分析と意思決定」に集中できる環境が構築できた。

特に、チャット指示によって帳票を生成できる点は、エンタープライズ領域における業務フローを変化させうる潜在性を持つと考える。

3
2
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
3
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?