How to create an Excel app that runs Python?

farayao.ds at gmail.com farayao.ds at gmail.com
Wed Mar 25 10:24:22 EDT 2020


On Tuesday, 24 March 2020 16:26:53 UTC, oliver  wrote:
> Use the win32com library to interact with Excel via COM. Although the
> learning curve is a little steeper it's not too bad and works great. I used
> this technique to control ARENA with Python through its COM API to run a
> whack of simulations (1000-10000), then used python to gather the results,
> and used win32com from python to finally inject the data into Excel and get
> it to generate charts and tables that could be used by stakeholders without
> access to python.
> 
> Oliver Schoenborn
>   || Cloud Application Engineer, Owner || Sentian Cloud Computing Inc.
>   || Ottawa, ON, Canada || +1-613-552-4466 (mobile)
>   || oliver at sentianSE.com
> 
> 
> 
> 
> On Tue, Mar 24, 2020 at 7:16 AM <farayao.ds at gmail.com> wrote:
> 
> > I have the following scenario:
> >
> > I have created lots of python files that I use to calculate a Cashflow
> > model, when I run these files I get a beautiful pandas DataFrame that
> > contains my final model. My mission is to show this table to the rest of
> > the company in a friendly format ("Excel") and they need to be able to
> > generate this table themselves from Excel, using the Python script I
> > created ("the idea is that they open an excel file that has some type of
> > dashboard and a form that they need to fill in, once they fill it in and
> > press "Go" or "Run" or something like that, these parameters will be sent
> > to the Python script to generate this final pandas DataFrame. Finally this
> > DataFrame needs to be displayed/pasted in the Excel sheet that they
> > initially opened)
> >
> >
> > The problems:
> >
> > The company needs to be able to run this model, but the users, apart from
> > me, use Excel and they can't open up a Jupyter notebook or VSC to run the
> > code. They can't even install Python on their machines (or at least that is
> > not ideal)
> >
> >
> > My Attempts:
> >
> > I am currently using "xlwings" to run Python within Excel, although it
> > requires that the user has Python and xlwings installed and has added the
> > xlwings "Addin", which is not an ideal solution at all.
> >
> > I am thinking about using Dash, I don't know if it is what I need since I
> > haven't looked into it that much yet (I have been trying to make it work on
> > xlwings first)
> >
> >
> >
> > If you have any suggestions on how to do this, I would really appreciate
> > that.
> >
> > Thank you
> > --
> > https://mail.python.org/mailman/listinfo/python-list
> >

Hello Oliver,

Thank for your answer, it sounds like a very sophisticated method, which is good, although I don't know what you mean when you refer to COM. What is good about the win32com library in particular?

Thanks!


More information about the Python-list mailing list