微软已经将 Python 原生集成到 Excel 公测版中首先向 Microsoft 365 Insiders 推出,从而使用户能够借助 Python 库、数据可视化和分析的能力更好地使用 Excel。
目前该功能只能在桌面版 Excel 中使用,但微软表示 Python 计算也可以在微软云中运行。如果感兴趣的话,你现在可以加入 Microsoft 365 Insider 计划并选择 Beta 频道来获取最新的 Excel 版本。
随着 Python 已经原生集成到 Excel 表格中,用户已经可以通过新的“=PY”函数将 Python 代码直接输入到 Excel 单元格中。Excel 用户可以无缝地在公式、图表和 PivotTables 中使用 Python。
微软 Excel 宣布集成 Python:用户可通过全新“=PY”函数调用 Anaconda 发行版执行各种操作 - IT之家
3 个赞
Duah
2
雖然微軟常常做一些破壞大眾習慣的怪事
但最近的這些變化還挺好的,感覺微軟開始用各種流行的編程語言改造自身了
上次還用rust重寫了windows的內核
1 个赞
haitao
(HaitaoSoft)
3
好像很久以前就听说过,终于实现了?
不过vba的糟糕是 excel的对象、属性、方法的名字 不直观自然,
仅仅换语言意义不大
Fay
4
看了看,这个是集成到了单元格,而不是以前的宏
那是不是无敌了……
Baiyssy
(Baiyssy)
5
兼容性灾难。
发展到现在,Excel最大的优势其实是兼容性。因为Microsoft Office事实上的垄断地位,你应该预期各种设备都(至少大致)同样解读你制作的Office文档。
Excel365才支持的新函数我从来都不敢用,除非事先十分确定文件不会发给别人——这样的文件其实不多。
Python的加入会加剧兼容性问题,更不用说Python本身的版本、库之间的兼容性问题了。
我觉得问题不大,这兼容性体现还是老函数和宏的兼容。py是开拓全新生态,自己有时候就不用正式写个程序,有些临时的事情用excel就足够强大。
而且内置py可能都不支持很多第三方库,版本、库都被云端控制,兼容性把控的死死的
大概就是以前vb升级版,但是自由度估计也不会太高。
Baiyssy
(Baiyssy)
7
这个兼容性首先是各个版本之间的兼容性。如果用了新函数和Python,在别人的电脑上就无法正常运行。
同样是Office程序,Word和PPT在这方面也会出现问题,但是显然没有Excel这么严重。因为大部分情况下,把doc和ppt发给别人,别人只需要看到一个静态的效果,所以只要简单地转换成pdf可以完全杜绝兼容性问题(ppt动画存在版本间兼容的问题没法解决,但至少这不涉及内容而只是可以损失的形式)。而xls常常实际上是一个程序,是动态的,兼容性问题就没法解决。
至于Python的版本和库的问题,当然只是附带的。
这回明显是求新求变了,不在乎什么兼容性,需要用户自己跟上,不过那些对 Python 感兴趣或者轻车熟路的个人或者企业应该会很受欢迎
shadows
(shadows)
9
必须得说明python代码的运行是在云上进行的,不是本地!
the Python calculations run in the Microsoft Cloud
来自微软原文第一段以及第3点 https://techcommunity.microsoft.com/t5/excel-blog/announcing-python-in-excel-combining-the-power-of-python-and-the/ba-p/3893439
感觉微软并没有打算让它可以本地运行
这种只能云上运行的功能,等于你把文件分享给别人的话,别人也得有office365订阅+联网。
企业应该得担心数据安全性的问题
当然这也统一了代码运行环境,也有好处吧。
1 个赞
@Baiyssy @shadows 如果考虑兼容性,我觉得直接把公式转换成数值比较好,给别人能这么做的我都这么做,毕竟我不知道对方用的是什么版本,有可能还是WPS呢。
Baiyssy
(Baiyssy)
13
如果转换成数值就可以,那就是把Excel当成静态的表格了。
对稍微复杂的数据,动态的、可以实时计算的表格是必要的。
确实是,我一般提供数据保证正确,用户并不关心怎么来的。