
Microsoft、「Python in Excel」を発表 53
ストーリー by nagazou
パブリックプレビュー 部門より
パブリックプレビュー 部門より
Microsoftは22日、「Python in Excel」のパブリックプレビューを発表した。この機能は、「Microsoft 365 Insider」プログラムのメンバーに段階的に提供される。「Python in Excel」は、PythonスクリプトをExcel内で実行できるようにする機能。Pythonは、数値計算、統計分析、機械学習などの領域で広く活用されており、Excelと組み合わせることでビジネスアナリティクス分野での活用が可能(Announcing Python in Excel、窓の杜)。
Excel上でPythonコードを実行するには、新関数「PY」の引数にコードを与えることで可能となる。クラウドサービス上で計算処理が行われ、結果がワークシートに返されるため、ユーザー側でPython環境を整える必要はないとしている。またセキュリティも考慮されているとしている。「Python in Excel」には「Anaconda」ディストリビューションが組み込まれており、主要なPythonライブラリが利用可能としている。
Excel上でPythonコードを実行するには、新関数「PY」の引数にコードを与えることで可能となる。クラウドサービス上で計算処理が行われ、結果がワークシートに返されるため、ユーザー側でPython環境を整える必要はないとしている。またセキュリティも考慮されているとしている。「Python in Excel」には「Anaconda」ディストリビューションが組み込まれており、主要なPythonライブラリが利用可能としている。
意味不明 (スコア:2)
>「Excel」でPythonコードを実行するには、(中略) 計算処理は同社のクラウドサービスで実行され
Excel で実行してないじゃん。
どうせクラウドで実行するなら、XlsxWriter か OpenPyXL を使ったほうがマシ。
完全自動化もできるし。
そうやって xlsx ファイルを作ったら、エクセルで出力を微調整するのがよろし。
マルチプラン (スコア:0)
昇華中!
オフラインで使えないの?! (スコア:0)
こりゃまた微妙ですな
Re: (スコア:0)
全然 Python in Excelではないですね。
地獄が見える (スコア:0)
普通にVBAの代わりにパイソン使えるようにすればいいのに。
これじゃセルの中にVBAが入るようなものでむしろ状況が悪化している。
Re: (スコア:0)
普通にVBAの代わりにパイソン使えるようにすればいいのに。
これじゃセルの中にVBAが入るようなものでむしろ状況が悪化している。
ネ申Excelが虫它ネ申Excelにクラスチェンジです
# 蛇の神で何を思い起こすがで年がバレそう
Re: (スコア:0)
# 蛇の神で何を思い起こすがで年がバレそう
KOFのオロチかな。
# VBA(遊び)は終わりだ!セル内Pythonで泣け!叫べ!そして死ね!!
Re: (スコア:0)
ヤマトタケルの映画でしょ。
数式からVBAとかマクロ呼び出してそれをパイソンに渡してウェーイ。
Re: (スコア:0)
# 蛇の神で何を思い起こすがで年がバレそう
40代半ばだけど邪神ちゃんドロップキックですすみません。
Re: (スコア:0)
灼眼のシャナのラスボスの方を思い起こした。一期のアニメを配信で見ると額縁のままなんだよな。
Re: (スコア:0)
Excelそのものをほとんどなんでも操作できるVBAと違って、Python側からのアウトプットはExcel関数の返り値に限られると見ていいと思う。
大丈夫だと言い切るつもりはないが「セルの中にVBAが入るようなもの」であってもセルの外には影響を与えることができないように設計しておけば、リスクの大きさは従来のExcel VBAとはまったく違う。
Re: (スコア:0)
その設計すんのMicrosoft?それともこれを使う人?
Re: (スコア:0)
Microsoftが設計する以上は全面的には信用できないだろうが、セルの数式でわざわざ現行VBAほどなんでもできるようにする方が困難なので、そんなことを想定する方が頭おかしいといえる
Re: (スコア:0)
LibreLogo [opensource.srad.jp]みたいになるよりは、素直にリモートにしたのは英断だとは思う。
Re: (スコア:0)
LETとLAMBDA、LAMBDAヘルパー関数を使えば、今でもセル内でプログラミングできますよ
# それがいいとは言っていない
Re: (スコア:0)
表示・仕上げがExcelで、Excelデータの計算やら自動化をPythonでっていう本が何冊か出てるみたいだし、そういう層にアピールしたいんちゃいます?
Re: (スコア:0)
COM経由でPythonからExcelをコントロールできるじゃん。
VBAでしかできないことってあるのかなあ。困ったことないな。
Excelを外からコントロールするのが面倒かもね。
バインディングがあればいいので、言語はPerlでもPythonでもPowerShellでもなんでもいい。
Pythonは外部ライブラリが必要だな。pywin32かな?
python のライブラリ (スコア:0)
ぜんぜん調べずに聞いてみるんだが
python のライブラリってどこまで使えるんだろう?
- 使えない
- 標準のものの一部だけ使える
- 標準のものは全部使える
- 外部ライブラリを xlsx に組込める
- 外部ライブラリをネットから取得できる(pip)
あとは組込み命令とかに使用制限はあるだろうか?
いろんなことができそうだと思う一方で、おもいっきりセキュリティホールにもなりそうな気がしたので。(文法だけ python で実質制限だらけだろうか?)
Re: (スコア:0)
Anaconda組み込んでるって書いてあるじゃん。
Re: (スコア:0)
全然調べて無くても、せめてストーリぐらいには目を通そうぜ(たとえtypoや要約ミスが多くても)
Anacondaが組み込まれてるから、その範疇で主要なライブラリは揃ってる
あと実行はサーバサイドだから、xlsxに組み込んだりネットから取得ってのは出来ないはず
セキュリティホールになるかはサーバ次第だけど、FaaSと同じだから前例がないわけでもないしそこまで神経質になる必要もないかな
とはいえ秘密データが一時的にでもアップされるわけだから、多くの企業では使用は禁止ないし制限されるだろうね
Re: (スコア:0)
でも conda ってネットワークから取って来てインストールだろ?
もしかして全パッケージの最新が常にインストール済みとかなのか?
古いの使いたくなったらどうするんだ?
Re: (スコア:0)
そういうめんどくささを排除するためのサーバサイドなんでしょ。
古いの使いたいとか、セキュリティホールあるバージョンとか、そんなことは意識出来ないし、しなくても良くする。
Re: (スコア:0)
でも、そうだとすると、ライブラリが勝手に最新にアップデートされて、
新しいライブラリに対応していない python スクリプトが実行エラーになるので、
古いファイルが正しく読めなくなる事態が発生するな。
それって致命的じゃないか?
Re: (スコア:0)
https://www.python.jp/install/anaconda/conda.html#:~:text=%E3%83%90%E3... [python.jp]
>バージョンを指定してインストールする時は、conda install パッ
Re: (スコア:0)
自分のコメントにぶら下げるが、ユーザが自分用にパッケージをインストールできるのであれば、codaの記述方法に従ってバージョン指定は可能なのでは
ちょっとまったー (スコア:0)
CSVやTSVでセル内に「=PY()」を書いても行けるのだろうか
カンマ区切りやタブ区切りをPythonで扱わせることに宗教的問題はないのであろうか
Exvcelに取り込んだ後だから関係ないもんで許されるのだろうか
Re: (スコア:0)
インデントでブロックを表現するところはどうするんだ
Rubyってなくなるの? 答えはもちろんノー! (スコア:0)
どうせならExcelでRubyとぐらい意表を突いて欲しかった。
しかし2023年、機械学習とかの追い風があったとは言えここまでPythonが圧勝するとは思わなかった。
Rubyにもネイティブ? のNumrubyとかPandasRubyみたいなライブラリがあったら状況変わったのだろうか?
Re: (スコア:0)
Rubyは理想に殉じかけてる途中だと思ってる。
Re: (スコア:0)
だってRubyって普及させようとかなくて自分が使う事しか考えてない人たちのものでしょ。
Re: (スコア:0)
rb_callみたいなライブラリがあるし…
Re: (スコア:0)
言語仕様としてはRubyのほうがはるかに上。
Pythonのような後付感はまったくないよ
Re: (スコア:0)
どんなに言語使用が優れていようがダメなものはダメって見本。
Re: (スコア:0)
Python in Excelを使ってRubyを実装するとか?
Re: (スコア:0)
perlとかrubyとか宝飾系の名前は駄目なのです。
Re:Rubyってなくなるの? 答えはもちろんノー! (スコア:1)
diamond(の元素)とか?
-- う~ん、バッドノウハウ?
Re: (スコア:0)
作者がWindowsに対応する気がないから普及しようがない
Re: (スコア:0)
誰か外人が、どんな風にも書けるので、他人が書いたものを読むのが大変であり、他人のソースをデバッグするとかやりたくないとかなんとか書いてたとオモ
クラウドか… (スコア:0)
機密情報が関わると使えないし、将来的にサポートしてくれるか怪しい。
下手なエンジニアが無断で「業務効率化」をして炎上するとかもありそう。
そのうちローカル実行できるようになるなら良いけどそれはそれで困るか。
あと互換性って保たれるのかな?
ライブラリが豊富で比較的実装が容易だからなのは分かるけど、「なぜPython?」感はある。
Microsoftと言えば.NETだし、組み込み言語と言えばLuaだし。
そういや最近のグラフ電卓もPython使えたりするな。
分解動画で電卓本体がZ80で、Python実行時はARMの外部チップに丸投げとかいう実装を見たな。これ [youtube.com]。
古い設計をそのまま現代化する雑なやり方。
Re:クラウドか… (スコア:1)
保安通信協会の悪口はやめろw
Re: (スコア:0)
追記:
あとPython系と言えばIronPythonがあるせいで.NET系プログラムのスクリプトとして使われる事もあるけど無関係だろうな。
具体的にはRhinocerosっていうモデリングソフトのGrasshopperっていうビジュアルプログラミング言語で使われてるのが印象的だった。
Re: (スコア:0)
将来的な話はわからんけど、現時点ではおそらく無関係。
IronPythonってCPythonに比べてめちゃくちゃバージョンが低い。
去年ぐらいまではCPythonの2.7系だったし、最新でも3.4系
だったか? これでは最新の便利なライブラリを使う際に
いちいち互換性云々を考えないといけないので使いづらい。
あと今度のはローカルで動かすわけではないので実績の少ない
IronPythonを使うより実績のあるCPythonのほうが安心安全。
今回の話は単にVBAの置き換えというマクロの文法云々という
話ではなく、ワークシート上のデータ処理をいかに効率よく
行うかというのが主目的だと思うので統計やら機械学習といった
ライブラリをフルに活用出来る言語としてpythonを選んだんじゃ
ないかと思う。Rという選択肢ならあったかもしれないけど
単に組み込みで多いからというLuaみたいな言語だと力不足かも。
Re: (スコア:0)
データサイエンティストが成果物を作るときに、Excelを便利に使えるようにじゃないかな。
禁止したい組織だと、グループポリシーで無効化 [microsoft.com]されそう。
Re: (スコア:0)
へぇ~、おなじみTI電卓にそんなバージョンがあったのか
どうせやるならMathematicaが動くバージョンも作ってくれたら良いのに
そこまでいかなくても、Raspberry Pi Zeroで動くMathematicaフリー版があったら嬉しい
Re: (スコア:0)
オフトピだけど、Mathematicaは滅多に使わないから、RPiのフリー版はModel A/Bだけで、Zeroは非対応 [wolfram.com]なの初めて知った。
これをごにょごにょすると (スコア:0)
仕事中にExcelを使ってるふりをしてStable Diffusionを動かせるという事ですか?
計算はクラウド側でやるみたいな説明があったからローカルPCにも優しいし。
# やるなよ、絶対にやるなよ(お約束
Re: (スコア:0)
仕事中にExcelを使ってるふりをしてStable Diffusionを動かせるという事ですか?
忘れたころに処理結果帰ってきてプレゼン中にだいこうかいですね
字下げどうすんだろ? (スコア:0)
HTMLに埋め込むときも大変そうだが、
あの変な字下げで大丈夫かねえ?
セルの中に書ける程度ならたいして気にならないだろうけど
そこそこ長いスクリプト書けるのかなあ
クソ重い計算がバリバリ使えるようには (スコア:0)
クソ重い計算がバリバリ使えるようにはならんやろうな?
なんか制限かけてきそう。
Re: (スコア:0)
Excel でのデータ セキュリティと Python [microsoft.com]