Live data from Hacker News

Microsoft is bringing Python to Excel

theverge.com

181–190 of 455 posts

Re: Microsoft is bringing Python to Excel

#181
post #57

I wish it wasn't solely powered only by Microsoft Cloud and could support python running locally, but regardless I think this will still be huge and single-handedly modernizes Excel by a large margin. This alone could eliminate the need for websites that just want this sort of data. I can think of a past project at a previous job I did building an analytics website used only by a handful of people internally that cou…

> This alone could eliminate the need for websites that just want this sort of data I catch flak for this all the time! Our users just want to be able to use Excel to free-form analyze their data. IT, of which I'm a part of, insists on building web apps to do that for them. They're never happy because all they wanted was Excel. I keep explaining all we have to do is build a data mart built using SQL Server, and use o…

Our company uses Power BI for this very reason. Most of our users are content with what's available in the reports we've built in Power BI. However, a few power users directly connect to the datasets we've created (that also feed the Power BI reports) and can mix and match that data in Excel.

Excel will import datasets from the Power BI client, and you can refresh the data at any time. The nice part of this arrangement is that the whole model is imported. All the relationships between tables, all the added calculation columns, all the measures are there for use by the end user in Excel.

Power BI has been a great solution for our company (~1000 employees).

Re: Microsoft is bringing Python to Excel

#182
post #49

I wish it wasn't solely powered only by Microsoft Cloud and could support python running locally, but regardless I think this will still be huge and single-handedly modernizes Excel by a large margin. This alone could eliminate the need for websites that just want this sort of data. I can think of a past project at a previous job I did building an analytics website used only by a handful of people internally that cou…

Hi I work on Excel, can you write a summary of why that's important to you and send it to bgruenbaum@microsoft.com ? I'll get it in front of a PM. Alternatively PMs read all the feedback sent via the feedback UI on Excel web and desktop so you can use that instead if you prefer.

The Cloud, and therefore the integration of as much as possible in it, is core Microsoft strategy.

It's about the recurring payments, the lock-in, and ultimately literally having the knowledge and business processes of the world economy on their own computers. If this is true, the reason why it is important to run data and scripts locally should be clear, and so is the motivation of your PMs to actively combat any such things.

But if you get a summary in your inbox and show it to your PMs let us know how that goes down.

Re: Microsoft is bringing Python to Excel

#183
post #132

Earlier quoted context omitted.

What if I’m running windows in a VM in Ubuntu and only feeding it exactly the relevant stuff?

You still have no control over the data you place into the Windows VM, which would include the data in the Excel sheet.

does he have control over whether he transmits any data he places in the mysterious windows VM?

Re: Microsoft is bringing Python to Excel

#184
post #57

Earlier quoted context omitted.

> This alone could eliminate the need for websites that just want this sort of data I catch flak for this all the time! Our users just want to be able to use Excel to free-form analyze their data. IT, of which I'm a part of, insists on building web apps to do that for them. They're never happy because all they wanted was Excel. I keep explaining all we have to do is build a data mart built using SQL Server, and use o…

To be fair, Tableau Desktop, Tableau Prep, and Tableau Cloud are great if expensive products. With Tableau Prep, you get a visual ETL tool. Being technical, I prefer SQL, but for business folks Tableau Prep is more of a REPL so they see what their actions are going to do. They can schedule these Prep flows in Tableau Cloud which will ETL and produce daily datasets which users can then interact via the dashboards on T…

That last part is almost exactly what we do with Power BI. We import tables from a SQL data warehouse into Power BI. We then build a data model (creating relationships between tables, adding calculated columns to those tables where needed, and creating measures to summarize the data). We then create reports based on those datasets. Most of our users are content with what they see in the Power BI web client.

This is the killer feature, however: power users can access those same datasets through Excel and import the entire model. All the relationships, all the calculated columns, and all the measures are there for the power users to mix and match and filter however they want in Excel. It's been a phenomenal success for our business.

Re: Microsoft is bringing Python to Excel

#185
post #49

I wish it wasn't solely powered only by Microsoft Cloud and could support python running locally, but regardless I think this will still be huge and single-handedly modernizes Excel by a large margin. This alone could eliminate the need for websites that just want this sort of data. I can think of a past project at a previous job I did building an analytics website used only by a handful of people internally that cou…

Hi I work on Excel, can you write a summary of why that's important to you and send it to bgruenbaum@microsoft.com ? I'll get it in front of a PM. Alternatively PMs read all the feedback sent via the feedback UI on Excel web and desktop so you can use that instead if you prefer.

ITAR and other regulatory issues - being the primary. Not all users are on Office 365 GCC High.

Re: Microsoft is bringing Python to Excel

#186
post #49

Earlier quoted context omitted.

Hi I work on Excel, can you write a summary of why that's important to you and send it to bgruenbaum@microsoft.com ? I'll get it in front of a PM. Alternatively PMs read all the feedback sent via the feedback UI on Excel web and desktop so you can use that instead if you prefer.

Can you just please fix the issue with date strings (such as "20230822090811") being converted into scientific notation? I've received literally hundreds of these documents over the past decade. And as long as this problem exists, I will keep receiving them. Can you please just add a button - "unmess this document"? The number of man-hours I've wasted re-creating documents is countless. My job is to do other things n…

You may want to try a CSV editor: https://www.moderncsv.com - it's helped me already.

Re: Microsoft is bringing Python to Excel

#187

I wish Libreoffice would have smelled the coffee long time ago. In principle scripting using Python is possible but exceedingly cumbersome/ugly and there seems to be no roadmap to improve on this. The same warning applies to the linux desktop and all its apps more generally. Increasingly proprietary platforms will be rolling out advanced "AI" functionality extensions to classic apps that are cloud based, many of them…

that's interesting, i see the opposite. python is so easy to script that imo excel is nailing its own coffin. with an aging and retiring demographic of people that have never used a programming language, anyone who learns to incorporate python into excel will end up preferring python because its both more flexible and scalable. i have no reason to use excel except for basic drawing board math, if someone demands a sp…

Not a chance. There's nothing scary about VBA (except its inflexibility and lack of a lot of modern features), and people aren't learning that either. Of course, the last decade of vaguely threatening to remove it from Office completely (in favor of js and now python?) hasn't helped people think VBA would be a good investment of their time to learn. A required internet connection and having Python only work on Windows doesn't make it look like much better of an investment.

Also, imo, Python and whatever random environments and libraries that you'll have to use with it to get your work done, will be in almost every way worse than just using VBA. And if you use VBA, your work will be effortlessly portable. The only problem I have with it is that I have to come up with ways to get the code out of the embedded IDE into source control, but there are scripts that help.

> i have no reason to use excel except for basic drawing board math, if someone demands a spreadsheet out me i automate its generation in python so i never have to deal with it again

I, on the other hand, do it in VBA, and expose every important calculation within clearly labeled spreadsheets so programming-illiterate people can audit them and feel confident about the output.

Re: Microsoft is bringing Python to Excel

#188

It’s interesting but if you are good enough at Python, can’t you already write to and read from spreadsheets? Maybe moving up a Python excel library like xlrd and openpyxl and making it reactive would be more worthwhile for Microsoft. Writing Python code in that little formula bar as shown doesn’t seem attractive. Writing Python in VSCode and seeing the results appear in the spreadsheet in real time would be great th…

No, you use Excel when you need a data manipulation program quickly and you want to ship it to clients without any installation or training. You just send the workbook to your client and it's done!

It's very self-contained, what works on your machine is almost guaranteed to work on the client's computer, given that they have the same Excel version. It's also very reliable, VBA apps can work for years without any maintenance or support.

Openpyxl is fine if you want to generate a report and send the results but for anything dynamic you would need to ship an interpreter, plus generate an exe, plus ship a workbook with the data, plus you probably need to write a GUI (users freak out from the cmd). This is much less reliable and requires constant support to users, VBA/excel apps rarely do.

This Python integration is a bit disappointing though as the "killer feature" of Excel is that it's self-contained and now it will rely on MS's cloud. This is yet another integration that will fail to kill VBA (we had JS and .net already but had similar issues), it seems that MS doesn't really understand how people use Excel :)

Re: Microsoft is bringing Python to Excel

#189

I was so excited about Python in Excel, until it said "run in the cloud." There just doesn't seem to be any reason for this except to tie you into their cloud service. It feels so much like protecting me from unsafe printer ink. I'm generally a fan of MS Office products and try to give them the benefit of the doubt. Please help me think of a plausibly good reason for requiring Python to run in the cloud, that is not…

Not asking customers to manage a local python installation is one thing, although I totally understand how excel + python power users would likely be comfortable bringing and maintaining their own python runtime.

Fun fact: Microsoft shipped Python code in 1996. The could do it again if they really wanted to.

http://python-history.blogspot.com/2009/01/microsoft-ships-p...

Re: Microsoft is bringing Python to Excel

#190
post #38

This sounds like it provides a way for Excel to hand a bunch of data to Python code for processing and get back results, and vice versa. That's probably extremely valuable to many people, but it does not seem to be what I hope for whenever I see something about bringing Python to Excel. What I hope for is something that is like VBA but without the VB. I.e., a Python (or JavaScript) interpreter/JIT/compiler built into…

Install PyWin32 module and `import win32com.client` and you can access "all the internal Excel objects and methods that VBA has access to".

    C:\>python
    Python 3.10.1 (tags/v3.10.1:2cd268a, Dec  6 2021, 19:10:37) [MSC v.1929 64 bit (AMD64)] on win32
    Type "help", "copyright", "credits" or "license" for more information.

    >>> from win32com.client import Dispatch
    >>> xl = Dispatch("Excel.Application")
    >>> xl.Visible = True
    >>> wb = xl.WorkBooks.Add()
    >>> sh = wb.WorkSheets[0]
    >>> sh.Range("A1").Value = "Hello World"
    >>>
Post reply on HN