残業を減らす!Officeテクニック

「ChatGPT」の新機能「Code Interpreter」にExcelの面倒な計算を処理してもらった

XLSXファイルを直接アップロードして処理、結果もXLSXファイルでダウンロード可能

「Code Interpreter」を有効にすると、ChatGPT上でPythonのコードが実行される

 ChatGPTの有料プラン「ChatGPT Plus」のユーザー向けに「Code Interpreter」(コード・インタープリター)の機能が提供開始されました。CSVやExcelなどのファイルをアップロードして、データ分析や加工、グラフの作成などの処理が可能です。また、生成したデータをダウンロードすることもできます。

 有料プラン限定の機能ですが、驚異的な性能と話題になっており、今回は簡単なExcelファイルで、どれくらいすごいのかを試してみました。

 内部的にはPythonのコードが実行される仕組みです。ユーザーはコードの内容について言及する必要はなく、「このデータを分析して」「表からグラフを作成して」などと、ざっくり指示すれば、ChatGPTが自動的に処理してくれます。

 「Code Interpreter」を利用するには、画面左下のユーザー名から[Settings & Beta]を選択。[Settings]-[Beta features]画面にある[Code Interpreter]のスイッチをONにするだけです。

[Settings]の画面にある[Beta features]で[Code Interpreter]をONにする
チャット開始時に[GPT-4]のメニューから[Code Interpreter]をクリックする

Excelで面倒な処理は?

 数式の生成や分析は、無料プランのChatGPTでも可能なので、Excelで面倒な処理を考えてみました。以下の表は、商品ごとに前年の販売数、売上、利益をまとめています。例えば、過去のデータを参考に利益を20%増にしたい場合、各製品の販売数はいくつでしょう?

商品ごとに前年の販売数、売上、利益をまとめてある

 この表は単純なので、20%増しの利益額を求めてから逆算してもいいですが、ゴールシークの機能を使うことが多いです。試しに「商品A」を処理してみます。

[データ]タブの[What-IF分析]-[ゴールシーク]の順にクリックする
[ゴールシーク]ダイアログボックスが表示される。[数式入力セル]は前年利益の入力されているセルF2を指定、[目標値]は20%増しの「47784」と入力した。[変化させるセル]は販売数のセルC2。[OK]をクリックすると分析が開始される
分析の完了後のメッセージで[OK]をクリックする
[変化させるセル]に指定した販売数のセルC2の値が書き換わる

 計算結果をセルに入力できるのは便利ですが、あらかじめ目標値を計算しておく必要がありますし、複数のセルをまとめて計算できないのも弱点です。この処理を「Code Interpreter」に肩代わりしてもらいましょう。

「Code Interpreter」で表を分析

 分析といっても特別な操作は必要ありません。ファイルをドラッグして「分析して」を指示するだけです。表の内容はわかっていますが、Code Interpreterが正しく認識できるのか確認してみます。

ファイルをドラッグして追加し、「この表を分析してください」と指示した
表の内容と分析可能な提案が表示された
[Show work](展開時は[Hide work])をクリックすると、Code Interpreterの処理内容と結果を確認できる

 Pythonのコードが実行されて、Excelの表の内容が展開されていますね。課題「利益を20%増しにする時の販売数」を問い合わせてみます。結果はExcelファイルとしてダウンロード可能です。

「前年の利益を20%アップしたいです。各製品で必要な販売数を教えてください」と指示したところ、すぐに回答が表示された
続けてファイルを作成してもらう。リンクからダウンロード可能

 なお、アップロードしたファイルとCode Interpreterで生成したファイルは一定時間が経過すると消去されます。同じファイルを扱いたい時は再度、アップロードや生成が必要です。また、本稿執筆時点でチャットは3時間に50回までの制限があります。

一定時間が経過するとファイルは消去される

元のExcelの数式は残らない

 ダウンロードしたファイルを開いて、計算結果が正しいのか、Excelのゴールシークで求めた結果と比べてみます。なお、Pythonで処理されるため、元のExcelの数式は残りません。

Code Interpreterで生成したファイル。目標の利益と販売数が追加されている
Excelのゴールシークで求めた販売数。小数点以下を切り上げると、Code Interpreterの結果と一致する

 計算結果は正しいようです。処理内容とExcelの数式を問い合わせてみます。

元の数式が残らないのかを聞いてみた
計算内容の質問に対する回答
Excelの数式を回答してもらった

 今回のようなケースでは、Code Interpreterの結果から数値をコピペするか、結果だけのファイルを生成してもらうと話が早いですね。しかし、Excelで面倒な操作を自動で処理してくれるのは助かります。

Code Interpreterの結果からコピペしてもいい
結果だけのファイルを生成してもらうことも可能

 なお、指示だけでファイルを生成することも可能です。指定した列名での表や、複数のワークシートを含むExcelファイルなども作成できます。

 Excelファイルをアップロードできるので、既存の表を改善するヒントを教えてもらったり、複雑な数式を作成する時のサポートも期待できます。「ChatGPT Plus」をお使いなら、ぜひ試してみてください。