xlwings
node-bignum
Our great sponsors
xlwings | node-bignum | |
---|---|---|
25 | 1 | |
2,836 | 422 | |
1.3% | - | |
8.4 | 10.0 | |
6 days ago | about 3 years ago | |
Python | JavaScript | |
GNU General Public License v3.0 or later | - |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
xlwings
-
Python in Excel: Combining the Power of Python and the Flexibility of Excel
Reading the headline, I initially thought that Microsoft bought the company behind XLWings [1], which also enables you to use Excel directly within Excel, even locally. Not affiliated in any kind to that company, just used it in the past.
[1] https://www.xlwings.org/
- Microsoft is bringing Python to Excel
- Python for Excel: A Modern Environment for Automation and Data Analysis
-
Running python from excel
xlWings https://www.xlwings.org/
-
Creating slicers with xlwings
I'm trying to automate a report and I know xlwings does not support pivot tables and slicers, as it is essentially a pywin32 wrapper. You can directly reference the COM object using .api and constants
-
VM for python automation projects
Also you can also use xlwings library to build an excel add-on to replace or even augment VBA.
-
Help with Python automation at work to free up time as single Dad.
You want xlwings (my preferred) or openpyxl
-
[Question] Can I automate this? Sending emails with a file that needs to be updated.
You could look at using Python from Excel using xlwings.
-
Microsoft upgrades Office security by blocking VBA macros by default
Xlwings is superior anyway.
-
Any ways to use excel to run a, say, python script?
xlwings - open source and free - https://www.xlwings.org/
node-bignum
-
Microsoft is bringing Python to Excel
> Many languages that are considered "precision" languages have some form of suffix to denote large/long/arbitrary-sized literals. (C# there's a big useful difference if a literal ends with `m` or `l`.)
The failure mode is significantly different when comparing JS to other mainstream languages. Most languages have a "checked" mode (either opt-in or mandatory) so that expressions like `4611686018427387904 + 4611686018427387904` can raise an error, whereas JS will just give you the wrong answer. Python is the most ergonomic for beginners or non-developers because the runtime will convert an integral type to an arbitrary precision integer on overflow.
Yes, there are alternative primitives that can be used, but you need to know they exist. We're talking about a tool that is explicitly designed for people who are not professional programmers, and JS's behavior here is surprising unless you understand the underlying data model. I would personally much rather give beginners a tool incorporating as few footguns as possible.
> JS is a language with the tools today to do precision arithmetic (whether you like it or not)
Arbitrary precision arithmetic has been possible in JS since the language was invented, but it has always been a pain. The bignum NPM package[0] predates the BigInt numeric primitive by 9 years. The addition of `BigInt` to ES2020 was important for performance (since implementing an arithmetic primitive in JS makes calculations dog slow), but it didn't add any fundamental affordances to the language.
[0]: https://github.com/justmoon/node-bignum
What are some alternatives?
openpyxl
ironclad - CPython API compatibility layer for IronPython
XlsxWriter - A Python module for creating Excel XLSX files.
MicroPyScript - MicroPyScript: A test harness for multiple runtimes in PyScript
pyexcel - Single API for reading, manipulating and writing data in csv, ods, xls, xlsx and xlsm files
CopyQ - Clipboard manager with advanced features
xlwt
grist-core - Grist is the evolution of spreadsheets.
python-docx - Create and modify Word documents with Python
python-pptx - Create Open XML PowerPoint documents in Python
unoconv - Universal Office Converter - Convert between any document format supported by LibreOffice/OpenOffice.
docxtpl - Use a docx as a jinja2 template