For the next thing I am building, I had to fill a ton of gaps in the xlwings API. So now xlwings supports the following natively:
- PivotTables
- Conditional Formats
- Borders
- Advanced Chart control
- AutoFilter
- and many more...
Release notes: docs.xlwings.org/en/latest/what…
- PivotTables
- Conditional Formats
- Borders
- Advanced Chart control
- AutoFilter
- and many more...
Release notes: docs.xlwings.org/en/latest/what…
0
2
4
162
Microsoft is getting this backwards.
Copilot doesn't need a macro recorder. Copilot *is* the macro recorder.
This is how AI should work: describe a task in natural language, get reusable, deterministic code.
Anyway, thats what I am currently building. More soon.
Copilot doesn't need a macro recorder. Copilot *is* the macro recorder.
This is how AI should work: describe a task in natural language, get reusable, deterministic code.
Anyway, thats what I am currently building. More soon.
Macro recording for Excel Copilot skills.
A lot of us learned to code by recording a macro and reading the VBA it wrote. Now you can do the same with Copilot: do the task you repeat every month the way you always do it, and Copilot turns it into a skill you can reuse with an siders later this month.
0
0
3
312
Python has a new plotting library! 📈
Reflex recently launched xy, which I took as an opportunity to add support for even more plotting libraries to xlwings Lite's notebooks. You can now use:
- Matplotlib
- Seaborn
- Plotly
- Bokeh
- Altair
- Plotnine
- xy
Which one is your thon #microsoftexcel
Reflex recently launched xy, which I took as an opportunity to add support for even more plotting libraries to xlwings Lite's notebooks. You can now use:
- Matplotlib
- Seaborn
- Plotly
- Bokeh
- Altair
- Plotnine
- xy
Which one is your thon #microsoftexcel
0
2
5
308
Felix Zumstein retweeted
If you are pulling hundreds of Yahoo Finance tickers into Excel through the Tigzig YFIN API and WEBSERVICE keeps failing, here is a tracker built for exactly that. Built with xlwings Lite, Python running inside Excel. Pulls dividend & earnings calendar data, and prices.
Uses YFINickers at a time, batch size is configurable. Each batch writes back to the sheet as it comes in, with a spinner and a running status cell so you can see the load in progress.
All dates are UTC calendar dates in YYYY-MM-DD, no time of day. Yahoo timestamps each event to an exact instant, and we report the UTC date of that instant. For a US company reporting after roughly 8 PM Eastern, that instant crosses midnight UTC, so the UTC date is the next day. Convert from UTC to your own timezone rather than assuming the date is the US trading date.
Currently set up for S&P 500 tickers, swap in your own list. Full S&P 500 calendar pull takes around 9 minutes, price pull for 4 trading days takes around 2 minutes.
xlwings Lite, built by Felix Zumstein @felixzumstein , is free, comes as an Excel add-in you install once, and then you write and run Python inside Excel itself. It is my tool of choice for Excel automation. Installation is simple, guide linked below.
If you need to modify anything, the code is right there, hand it to any AI, including ChatGPT, and it should be able to change it for you. Guides and templates on xlwings Lite are on my hub, also linked below.
Link to Tracker: tigzig.com/files/xlwings/…
Installation and official docs: lite.xlwings.org/installation
Tigzig xlwings-Lite hub: xlwings-lite.tigzig.com
Tigzig YFIN API docs (humans): tigzig.com/apis/yahoo-fin…
Tigzig YFIN API docs (AI): yfin-h.tigzig.com/v1/openapi.json
tigzig.com/post/sp500-exc…
Uses YFINickers at a time, batch size is configurable. Each batch writes back to the sheet as it comes in, with a spinner and a running status cell so you can see the load in progress.
All dates are UTC calendar dates in YYYY-MM-DD, no time of day. Yahoo timestamps each event to an exact instant, and we report the UTC date of that instant. For a US company reporting after roughly 8 PM Eastern, that instant crosses midnight UTC, so the UTC date is the next day. Convert from UTC to your own timezone rather than assuming the date is the US trading date.
Currently set up for S&P 500 tickers, swap in your own list. Full S&P 500 calendar pull takes around 9 minutes, price pull for 4 trading days takes around 2 minutes.
xlwings Lite, built by Felix Zumstein @felixzumstein , is free, comes as an Excel add-in you install once, and then you write and run Python inside Excel itself. It is my tool of choice for Excel automation. Installation is simple, guide linked below.
If you need to modify anything, the code is right there, hand it to any AI, including ChatGPT, and it should be able to change it for you. Guides and templates on xlwings Lite are on my hub, also linked below.
Link to Tracker: tigzig.com/files/xlwings/…
Installation and official docs: lite.xlwings.org/installation
Tigzig xlwings-Lite hub: xlwings-lite.tigzig.com
Tigzig YFIN API docs (humans): tigzig.com/apis/yahoo-fin…
Tigzig YFIN API docs (AI): yfin-h.tigzig.com/v1/openapi.json
tigzig.com/post/sp500-exc…
0
2
2
218
Awesome Humble Bundle offer featuring my new book, Python for Excel (2nd Edition), alongside many other excellent @OReillyMedia titles, including Python Polars, Python for Data Analysis, Learning Python, and more.
humblebundle.com/books/python-r…
#python #books #pythoninexcel
humblebundle.com/books/python-r…
#python #books #pythoninexcel
0
0
2
178
xlwings Lite scripts now support arguments! Adding a type hint is all it takes to turn them into form fields when the script runs in App Mode.
#xlwings #pythoninexcel #python #microsoftexcel
#xlwings #pythoninexcel #python #microsoftexcel
0
1
2
173
print() doesn't have to be boring.
The Output pane in xlwings Lite now supports colors, so you can use @willmcgugan's Rich or Colorama to format your output nicely, including tables, progress bars etc.
#xlwings #python #pythoninexcel #microsoftexcel
The Output pane in xlwings Lite now supports colors, so you can use @willmcgugan's Rich or Colorama to format your output nicely, including tables, progress bars etc.
#xlwings #python #pythoninexcel #microsoftexcel
0
1
4
183
xlwings Lite is used for serious work, so it now has a serious Source files menu.
Some users told me their "main. py" had grown past 5,000 lines. Now you can split it up across multiple modules.
You also get:
* Multiple notebooks (.nb.py extension)
* Multiple pytest files n files, like "config.json"
* "*.sql" for SQL syntax highlighting
* Close and reorder tabs, rename and delete files
#xlwings #python #microsoftexcel #pythoninexcel
Some users told me their "main. py" had grown past 5,000 lines. Now you can split it up across multiple modules.
You also get:
* Multiple notebooks (.nb.py extension)
* Multiple pytest files n files, like "config.json"
* "*.sql" for SQL syntax highlighting
* Close and reorder tabs, rename and delete files
#xlwings #python #microsoftexcel #pythoninexcel
0
1
2
167
Felix Zumstein retweeted
🐍 Excel meets Python! "Python for Excel, Second Edition" by Felix Zumstein @felixzumstein (creator of xlwings)
Covers
✅ pandas, Jupyter, VS Code
✅ xlwings & OpenPyXL automation
#PythonForExcel #OReilly #DataScience #ExcelTips
Covers
✅ pandas, Jupyter, VS Code
✅ xlwings & OpenPyXL automation
#PythonForExcel #OReilly #DataScience #ExcelTips
0
2
2
140
I've just added a new killer feature to the xlwings Lite notebook: Right-click any variable and select "View in Excel". This will write out the DataFrame or whatever it is to a new sheet in your current workbook.
This is inspired by "xw.view()" from the open source package, of the all-time favorite xlwings features, from what I hear.
There's a few other enhancements though, go try the latest version of the notebook for yourself!
#xlwings #python #microsoftexcel
This is inspired by "xw.view()" from the open source package, of the all-time favorite xlwings features, from what I hear.
There's a few other enhancements though, go try the latest version of the notebook for yourself!
#xlwings #python #microsoftexcel
0
1
5
154
xlwings Lite now officially supports custom functions that return plots!
This means you can return plots from Matplotlib, Seaborn etc. and they behave just like native Excel charts: change the source data, and the plot updates automatically.
Because of technical limitations, pass through a cloud server before it lands in your cell. If that gives you heartburn: the self-hosted version of xlwings Lite keeps your data inside your network at all times. Happy to show you around!
Docs: lite.xlwings.org/custom_functio…
#xlwings #matplotlib #python #pythoninexcel
This means you can return plots from Matplotlib, Seaborn etc. and they behave just like native Excel charts: change the source data, and the plot updates automatically.
Because of technical limitations, pass through a cloud server before it lands in your cell. If that gives you heartburn: the self-hosted version of xlwings Lite keeps your data inside your network at all times. Happy to show you around!
Docs: lite.xlwings.org/custom_functio…
#xlwings #matplotlib #python #pythoninexcel
0
1
4
200
2 days ago, xlwings Lite crossed 1,000 daily users for the first time.
For the first 10 months, daily users were around 200. Nobody seemed to really care and I was busy with the 2nd edition of my O'Reilly book "Python for Excel".
However, in January, I started to implement the ing about. Most importantly, I added support for local files. All of a sudden, people seem to care!
Meanwhile, I've started using xlwings Lite for serious work myself. For example, I built this chart in it, using Wingman, the AI chat built into xlwings Lite ;-)
#xlwings #python #microsoftexcel
For the first 10 months, daily users were around 200. Nobody seemed to really care and I was busy with the 2nd edition of my O'Reilly book "Python for Excel".
However, in January, I started to implement the ing about. Most importantly, I added support for local files. All of a sudden, people seem to care!
Meanwhile, I've started using xlwings Lite for serious work myself. For example, I built this chart in it, using Wingman, the AI chat built into xlwings Lite ;-)
#xlwings #python #microsoftexcel
1
1
8
300
🎉 Giveaway! My author's copies of the 2nd edition of Python for Excel have arrived! To celebrate, I'm giving away 2 copies.
The 2nd edition now also covers Microsoft's "Python in Excel" and the new xlwings Lite add-in.
To enter: leave a comment about what you're most looking 'll draw 2 winners in a week, on June 29.
#pythoninexcel #microsoftexcel #xlwings
The 2nd edition now also covers Microsoft's "Python in Excel" and the new xlwings Lite add-in.
To enter: leave a comment about what you're most looking 'll draw 2 winners in a week, on June 29.
#pythoninexcel #microsoftexcel #xlwings
3
2
10
410
xlwings Lite now supports object handles!
While they look similar to a 'Python in Excel' cell, they are actually useful as you can provide them as arguments in native Excel functions. You can also customize them (icon, preview card, and text). See the docs: lite.xlwings.org/custom_functio…
#xlwings #pythoninexcel #python #microsoftexcel
While they look similar to a 'Python in Excel' cell, they are actually useful as you can provide them as arguments in native Excel functions. You can also customize them (icon, preview card, and text). See the docs: lite.xlwings.org/custom_functio…
#xlwings #pythoninexcel #python #microsoftexcel
0
1
4
206
xlwings Lite now ships with Python 3.14 (that's the latest one) and pandas 3.0 (in comparison, Python in Excel is on Python 3.12 with pandas 2.2). It's currently opt-in (Settings > Workbook), but will become the default for *new* workbooks over the next days. Existing workbooks runsion they were created with, unless you make the switch manually.
This was possible due to yesterday's Pyodide 314.0.0 release, the WebAssembly-based Python distro that powers xlwings Lite. Besides upgrading Python, it also starts an exciting new era where Pyodide packages (i.e., wheels), can now be uploaded to PyPI.org, just like normal Python wheels.
#pythoninexcel #pyodide #webassembly #python #microsoftexcel
This was possible due to yesterday's Pyodide 314.0.0 release, the WebAssembly-based Python distro that powers xlwings Lite. Besides upgrading Python, it also starts an exciting new era where Pyodide packages (i.e., wheels), can now be uploaded to PyPI.org, just like normal Python wheels.
#pythoninexcel #pyodide #webassembly #python #microsoftexcel
0
0
1
119
xlwings Lite now supports streaming functions!
The docs include a sample about how to stream live BTC prices: lite.xlwings.org/custom_functio…
Enjoy!
#xlwings #pythoninexcel #python #microsoftexcel
The docs include a sample about how to stream live BTC prices: lite.xlwings.org/custom_functio…
Enjoy!
#xlwings #pythoninexcel #python #microsoftexcel
0
1
2
161
Come to the dark side. 🖤
Dark mode has descended upon xlwings Lite.
May the 4th be with you.
Dark mode has descended upon xlwings Lite.
May the 4th be with you.
0
1
4
194
Some Python in Excel users I talked to burned through their monthly quota in 4 days. Which is why they're now running on xlwings Lite.
To make the migration easier, you can now "Import PiE" in xlwings Lite. This pulls everything into the xlwings Lite notebook, where you can nto scripts and custom functions if you like.
#pythoninexcel #python #microsoftexcel #xlwings
To make the migration easier, you can now "Import PiE" in xlwings Lite. This pulls everything into the xlwings Lite notebook, where you can nto scripts and custom functions if you like.
#pythoninexcel #python #microsoftexcel #xlwings
0
0
1
191
xlwings Lite can now run automated tests with pytest! 🔥
It's useful even if you don't use xlwings otherwise:
* Unit tests: Unit test your functions from main. py (see screenshot).
* End-to-end tests: Change an input cell and check if the result is correct.
* Cross-check: dsheet logic with an independent implementation in Python.
Here are the docs: lite.xlwings.org/tests
It's useful even if you don't use xlwings otherwise:
* Unit tests: Unit test your functions from main. py (see screenshot).
* End-to-end tests: Change an input cell and check if the result is correct.
* Cross-check: dsheet logic with an independent implementation in Python.
Here are the docs: lite.xlwings.org/tests
1
1
5
236


















