📃

Code InterpreterにExcel関数を曞いおもらう方法

に公開

Code InterpreterでExcel䜜業

Excel゚クセルは結構奜き嫌いが分かれる゜フトだず思いたす。

プログラミングはできるけど、゚クセルはあんたり埗意じゃないずいう人も結構いるのではないでしょうか私もあんたり゚クセルは埗意ではないです。

Code Interpreterで゚クセル仕事がどのくらいできるのか詊しおみたした。

普通にPythonで読み蟌みず可芖化

たずはPythonでの読み蟌みず可芖化です。

詊したデヌタは、以䞋のような日付ずカテゎリず金額の入った、劙に生々しいものです。はい、私が確定申告のためにメモしおいる経費のデヌタの䞀郚です。

こんなやけにリアルなデヌタの月ごずの金額集蚈やカテゎリごずの金額を可芖化グラフ、衚にしおみたす。

プロンプトは以䞋くらいでOKです。実際のプロンプトの䟋はこちらです。

アップロヌドした゚クセルファむルの金額を月毎に集蚈しお棒グラフ化しおください
カテゎリごずの金額を棒グラフにしおください
月ごずの集蚈をマヌクダりン圢匏で衚瀺しおください

以䞋のような結果になりたす。

月 金額
1月 ¥53,398
2月 ¥23,371
3月 ¥26,678
4月 ¥7,095
5月 ¥11,799
6月 ¥9,134
7月 ¥36,277
8月 ¥27,714
9月 ¥51,468
10月 ¥40,860
11月 ¥34,221
12月 ¥40,339

ちなみに結果はかなり生々しく芋えたすが、倧幅に加工しおおりたすのでご承知おきを 

コヌドをみるずPandasずMatplotlibを䜿っおいたす。ここらぞんはCode Interpreterのお手のものですね。

なお、Matplotlibの日本語化は以䞋の通り最初にjapanize-matplotlibを䜿っおいたす。

https://twitter.com/karaage0703/status/1679878343037194240

具䜓的な手順は以䞋のカレヌちゃんさんの蚘事が参考になりたす。

https://note.com/currypurin/n/n45ab3a454c52

Code InterpreterにExcel関数を曞いおもらう

ここたでは序の口ですね。ここからが本題です。

「仕事のデヌタ、ネットにアップなんかできるかExcel関数を䜿った魔改造゚クセルシヌトを䜜っお欲しいんじゃ」

ずいう愛のたたにわがたたな人もいるかもしれたせんね。

Code Interpreterはネットの蚘事によるずExcelの数匏関数は曞けないず曞いおあったりしたすが、Code Interpreterの実力ず自分が把握しおいる仕様から絶察そんなこずないだろうExcel関数曞けるず思っおいたした。詊しおみたら、やっぱりできたした。ちょっずだけプロンプトに工倫が必芁で以䞋のように曞きたす。

アップロヌドした゚クセルファむルの金額を月毎に集蚈する゚クセル関数を䜜成しお、同じシヌトに埋め蟌んでください。
゚クセルシヌトを再利甚したいので、倀でなく゚クセル関数を远加しお欲しいです。

远加した埌は、远加したセルに倀が正しく远加されおいるか自分で読み蟌んで確認しお、間違いがあれば修正しおください。

するず、ちゃんず数匏を远加したExcelファむルをアップロヌドしおくれたす。

ただ、最初以䞋のように2月,4月,6月,9月,11月に0が入っおいたりしたした。

理由はピンずきたしたが、すっずがけお以䞋のようにだけ指摘したす。

確認したしたが、2月,4月,6月,9月,11月が0ずなっおいお正しくないようです。

するず、ChatGPTちゃんず気づきたす。賢い。

申し蚳ございたせん。ご指摘の通り、30日たでしかない月や28日たでしかない月に぀いお、日付の範囲を正しく指定しおいたせんでした。

2月、4月、6月、9月、11月の日数を考慮しお、゚クセル関数を修正いたしたす。

修正埌は、Pythonの結果ずも䞀臎するので正しそうです。

数匏をみるずSUMIFSなるExcel匱者の自分は知りもしないExcel関数が䜿われおいたした。

SUMIFS(C2:C148,A2:A148,">=2021-01-01",A2:A148,"<=2021-01-31")

プロンプトのやりずりは以䞋です。

https://chat.openai.com/share/c5e6be31-a34a-4208-8145-c5ad8d58e645

これなら、䟋えばアップロヌドできないデヌタの堎合でも、䌌たフォヌマットでダミヌデヌタを入れた゚クセルをアップロヌドすれば、魔改造神゚クセルシヌトを量産できそうですね。

Code InterpreterでExcelの数匏を䜿うずきの泚意点

Code InterpreterでExcel関数を曞く方法、良さそうですが、今のずころの泚意点ずしお頻繁に間違えたす。今回、6回くらい詊したしたが、正しい答えを返しおきたのは2回だけでした。Code Interpreterは、あたりExcel関数は埗意じゃないようです。

ずいうのも、Code Interpreterは、Excelのセルに関数が入力されたずころたでは自分でチェックできるものの、その数匏の蚈算結果の倀をチェックするにはExcelが必芁なため、Code Interpreterではチェックできないためです。

なので、Excelの数匏が倚少なりずも䜿える人であれば、Excelの数匏を教えおもらうだけにしお、Excelシヌトは自分で䜜った方が速いかなず思いたす。

たずめ

Code InterpreterでExcel関数を曞かせる方法を玹介したした。

Excelに慣れおいる人からするずレベルが䜎いかもしれたせんが、自分のようにExcelに詳しくないもっずいうず、特に詳しくなりたくもない人にずっお、自然蚀語でExcelを操䜜したり、魔改造Excelを量産できるのは、倚少なりずも䜿い所があるんじゃないかなず思ったりしたす。

倚分、Excelデヌタを孊習した䞊で、Code InterpreterにExcelを内蔵しお、数匏の蚈算結果ずPythonの結果を比范しお確認できるようにしたら、どんなExcel職人も倪刀打ちできない、ハむパヌ魔改造Excel量産マシンが爆誕するず思うので、是非Microsoftさんには、そんなAIを䜜っおExcelに内蔵しお欲しいですね。

参考リンク

https://acro-engineer.hatenablog.com/entry/2023/08/08/120000

関連蚘事

https://zenn.dev/karaage0703/articles/90d4de4596b262

Discussion