Python as an Excel scripting language
Let us do scripting with Python! Yay! Not only as an alternative to VBA, but also as an alternative to field functions (=SUM(A1:A2))
Thank you to all those participated in our survey. What an amazing number of responses, many of them with very deep content. We’re processing the over ten thousand responses(!), and already appreciate the time so many of you took to answer with passion and experience.
Please know this survey is used to help influence various topics – both on Python as well as other related topics that the comments started to bleed into. Given the passion, I want to be clear this remains an area of exploration for us, without any specific timeline.
We’ll provide updates as we progress on this feature request.
Lead Program Manager
I'm in a finance/investment environment setting where Excel VBA is de facto the universal language of all departments (of course Java, C# etc. as well in some other dep.) 20 year old vba's still do their job which is quite impressive.
I'm not sure whether a full integration of Python is necessary, although its a hype about it now. VBA Libraries that could use py classes etc. but also R, C#, F# or Julia (or simpler than XLL C++) other languages, would be fine,
Ahmad Abbasi commented
I really want a native programming environment for python embedded in Excel. I wanted to make a full fledged multi component distillation column in Excel, but having spent 1.5 months coding up functions in VBA I felt the need for making a class. But I found out that there is no constructor for instantiating an object. There were some clunky workarounds suggested online but looking at them I gave up on VBA to achieve the goal. Python would be way cooler with umpteen libraries and thriving ecosystem, which a 20 year old language like VBA does seem to lack.
James Ball commented
I'm in a business environment where we use Excel every day and that's the first tool businesspeople bust out to solve problems.
But none of our developers want to learn VBA. It's a career-limiting move.
Ethan Mace commented
So how many votes are necessary for integration?
OK. Truth be told, despite my voting to have Python scripting in Excel, I have since switched jobs, and while I use Python everyday, it's been years since I've opened Excel.
Emre Poyraz commented
I dont think Python should replace Excel functions. Excel functions are very mature and popular.
But how about having a Python based macro ability for excel? This could be an add-on. Python modules for Excel are not good enough to replace VBA.
Peter F commented
VBA is an ancient programming language, using it is no longer practical. IMHO if Microsoft wants to succeed, it needs to adopt to modern computing.
Paul Mulherin commented
Python integration first proposed: 2015.
Last update from Microsoft Devs: 03/2018.
TBH I think we'll see the first manned mission to Mars before we see Microsoft implement Python support for Excel... :)
...or they'll skip Python support entirely in favour of something like Julia:
I would love to see some proper Python scripting supported in Excel.
Any updates on this please?
SUNNY VERMA commented
I dont want to imagine Excel without VBA.
VBA need to update but with python its not sounds good
I can’t tell you how strongly I support this idea! Please make this a reality! 😍
Microsoft does not give a **** about what any of you think. They will never add this feature. It’s been like three years or more since this was announced as an idea.
python together with the already known vba excel object model is my wet dream.
Or, just improve VBA and the editor a little bit.
go to https://youtu.be/f6VqQsfO6E4 and wait no longer!
I am so stoked to go to work in monday!
Kent Maxwell commented
My recommendation is provided Python support in Power Query for Excel, just like it's being now offered in Power Query in Power BI. I do not understand why Power Query is not the same for both products. Why does Power BI get all the new love?
Paul Mulherin commented
PyXLL looks very nice Tony!
Sadly only half of our team use Office for Windows and the rest are running Office for Mac OSX so I'm still waiting for an official, Microsoft-supported Python solution that covers *both* versions of Excel... :-/
Tony Roberts commented
You can use PyXLL, the Python Excel Add-In to do this. You can use it to write user defined function, macros, menus, RTD functions and customise the ribbon all in Python.
You can use it to do anything you can in VBA and more, and it supports all versions of Python.
This would be fantastic if we can use Python in Excel.
Make it so.
That would make excel really awesome.
Combining the tools and easyness of python and the ease of visualisation of excel. Especially in a corporate-environment.
Please do it, this would be an amazing thing!