前回は、【Excel】Copilotが「相談相手」から「実務担当」へ! ドキュメントを直接編集できるエージェントモード を紹介しました。
しかし、実際に使ってみると「AIに断られてしまった」「指示通りに動いてくれない」という場面に遭遇することがあります。
ExcelのCopilotが「できること」と「できないこと」の理解において、JavaScript API(Office.js)の仕様が影響しているので、その紹介です。
内容:
なお、確認のExcelは「Microsoft® Excel® for Microsoft 365 MSO」(バージョン2604)です。
1.実験:Copilotに「高度なピボットテーブル」を依頼した結果
当ブログ(shikumika.org)では以前、ピボットテーブルの限界を超えるテクニックとして、Power Pivot(データモデル) を活用して「値フィールドに文字列をそのまま表示する方法」を紹介しました。
参考情報: Excelピボットテーブルの値フィールドに、文字列をそのまま表示する方法 - shikumika’s diary
この記事にある高度な設定を、最新のCopilotなら自動でやってくれるのではないか?と考え、URLを提示して以下の指示を出してみました。
次のWEBページにある情報を参考に、Excelピボットテーブルを作成して、文字列をそのまま表示してください。
その結果、Copilotから返ってきた回答がこちらです。
制限事項
Office.js(Excel JavaScript API)では以下の操作がサポートされていません:
❌ Power Pivot データモデルの作成・編集
❌ DAX メジャーの追加
❌ Power Pivot ベースのピボットテーブル作成
現時点(確認したバージョン)では「サポートされていません」とのことです。
なお、データチェックはできていませんが「Power Pivotを使わず、通常の編集機能で直接出力する」は可能でした。
2. Copilotの「手」である「Office.js」の仕組み
ExcelのCopilot(エージェント機能)は、魔法のようにシートを書き換えているのではなく、内部的には 「Office.js(Excel JavaScript API)」 という命令セットを呼び出して操作を行っているようです。
エージェントモードはJavaScriptランタイム内のExcel APIを通じてワークブックを直接変更します。
なお、ExcelのAPI リファレンスは次のとおりなので、この範囲で直接編集が可能といえます。
例えば、
- 見た目の調整: セルの色、罫線、フォント、セル結合
- 通常の表操作: データの並べ替え、フィルタ、テーブル化
- 数式作成: VLOOKUP や IFS など、通常のワークシート関数の作成
などはできますが、Power Pivotそのものを操作することはできない仕様でした。
以上、ExcelのCopilotの直接編集でPower Pivotが編集できない理由とOffice.jsの仕様でした