Write Microsoft Excel Add-Ins in Python
Project description
Write Microsoft Excel Addins in Python
With PyXLL you can use Microsoft Excel as a user friendly front-end to your Python code. No VBA, just Python!
Worksheet Functions (UDFs): Call your Python functions directly from Excel.
Real Time Data: Stream real time data feeds from Python to Excel.
Macros: Replace VBA code with Python.
Menus and Toolbars: Add your own menus and ribbon toolbars to Excel.
PyXLL is a high performance and easy to use Python integration solution for Microsoft Excel.
For more details visit https://www.pyxll.com.
Installation
To use PyXLL the PyXLL Excel add-in needs to be installed.
Download the PyXLL Excel add-in from https://www.pyxll.com/download.html and see https://www.pyxll.com/docs/userguide/installation.html for detailed installation instructions.
This wheel contains the Python code needed to import the PyXLL module during development and testing, but it not needed when your code is running in Excel using the PyXLL add-in.
To install this package from pypi run pip install pyxll.
Features
For complete documentation and example code see the website https://www.pyxll.com.
Call Python Functions From Excel
Expose your analytics or modelling functions directly to Excel users. Any Python function can be turned into an Excel worksheet function, or User Defined Function (UDF).
Interactive modelling, analysis and ad-hoc calculations
Build dashboards using Python functions
Source data from your existing systems
Faster calculation times than VBA
Real Time Data
Stream live market data into your spreadsheets in real-time.
Make auto-updating dashboards with live data
Source real time data from anywhere with Python
Use Python’s asyncio event loop or your own threads
No complicated setup required
Lightning Fast Object Cache
Pass Python objects directly between Excel worksheet functions for cleaner and faster workbooks.
No need to always expand large arrays in Excel
Reduce spreadsheet clutter by returning objects in a single cell
Pass returned Python objects to other Python functions
Avoid time wasted reconstructing objects
Frictionless Developer Experience
Use any Python distribution (including Anaconda) and your preferred Python IDE or editor.
All code is external to Excel so is easily managed and deployed
Debugging support for all major Python IDEs
Reload automatically or manually, without restarting Excel
Code can be run and tested outside of Excel
For more details see https://www.pyxll.com/features.html.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distributions
Built Distributions
Hashes for pyxll-5.7.0.post1-cp312-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 987efdf49accece133238450b85bfd3bc6f87a423c28c72bf37acc2cbe712d7a |
|
MD5 | 75a87f31813fb44212227410622a643d |
|
BLAKE2b-256 | 4eca79427d77a7a476ce63cbe4264d76d9a1f1bf02508105300ea975c6e4473c |
Hashes for pyxll-5.7.0.post1-cp311-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 7f202f790e14fbd5a482518e851438135cc80630591330c947b401240e272b47 |
|
MD5 | db979b35f2e828e2931763a352750e18 |
|
BLAKE2b-256 | 92cb1460e9298c0b1684c6e6317e891f903a73f2a0351ef8f66e2915ea3fe8ed |
Hashes for pyxll-5.7.0.post1-cp310-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 40a1ea154ce970bae98e9bd8b56686aa25acf7e8dd2c29d100f7198295e04984 |
|
MD5 | f49023f6d1f7c6e6df4d7060255b02ef |
|
BLAKE2b-256 | 4c4abbf74408626f5b9d20e573dcb40a509655218c4fd65e7cbad458acad4a09 |
Hashes for pyxll-5.7.0.post1-cp39-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 3fa2c2fed43496874137477deda19477cb55a70b03a5ddffa7874da431559c9d |
|
MD5 | 681b88437b46090720bd29b885eb91a1 |
|
BLAKE2b-256 | 555a71d747e38e6c0fdfaf95388de5a340c24cd4a09d9e89fa7639d20d150d05 |
Hashes for pyxll-5.7.0.post1-cp38-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 865f1ee8fcf6dfec8a1f0b311e8c1a675d54ae49625e320944278b6dae6f3b9f |
|
MD5 | d1b6c18a1a3410b17d7e8baf8b96ed5b |
|
BLAKE2b-256 | 3223a5c3e011dd83c3889a154190b9eb0145798275e3664ee764c5ce9b49260f |
Hashes for pyxll-5.7.0.post1-cp37-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | a1b8d29ddf53a6362d8d008afeac901bf0635b180c1801bd6e5d0d1edf1a5b4d |
|
MD5 | a0e35419c3a3572250ff8a59166d0fb8 |
|
BLAKE2b-256 | 479d0105056f544045a9c1bd161216f8cb9d3661ae2c2e4c9ad901dbf9231bdd |
Hashes for pyxll-5.7.0.post1-cp36-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | feff622955efe4e11443b58b96a35d90428a7a1de518c5affa73e9047622c48b |
|
MD5 | 135b17a5fa20156affcbfa38d5a8eff5 |
|
BLAKE2b-256 | 5b53951d6cb57b096d0ecbbdccb1814ae640d3f133ace7557cfa214dfc60822b |
Hashes for pyxll-5.7.0.post1-cp35-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 6da965b68946d76e0019c17a0bebdbea9b839c478d1b90a3ddc02612d04489e0 |
|
MD5 | abfeb76c63ff4bfad244db0e320942f1 |
|
BLAKE2b-256 | c1bb68768c152e17170766e07e051e42c039fec8c01aa134419c64fa23a14a0f |
Hashes for pyxll-5.7.0.post1-cp34-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 8411db3eb69803b6b608c8ccc51e247612494c0366918e5d4cf45819a7d4a9ea |
|
MD5 | 4f062431b3220a3d3e9503718ec0d0f4 |
|
BLAKE2b-256 | 7c284f5fa573322cb242be638e12e02d00ae3fae00820a79bf84f255f68f5f58 |
Hashes for pyxll-5.7.0.post1-cp33-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | f65805520c04b8855c9d5d21e5a728f6298616b84dfeaf8755daf3fa078f91a7 |
|
MD5 | f4822a3a4460f43f065eb28a8082686f |
|
BLAKE2b-256 | 09c1203b9372c409c310907010fc97b827187da95bad9fffda5a9e3af8727e12 |
Hashes for pyxll-5.7.0.post1-cp32-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 7a292d7457d72d6f68dd8aa927428e937d1ceb0d5cf9724bd13a64f34a3c463f |
|
MD5 | d2be169d31c824897920eba489877b75 |
|
BLAKE2b-256 | e25b2a964af686ac891b4ea654b3f212f081af55f7ec3c49c0b6d13e98062144 |
Hashes for pyxll-5.7.0.post1-cp27-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 800b7c828c658c9db3bbf124cf0bdd058afc4b8e792e11322e014a06a1270ef4 |
|
MD5 | 92cdb4fbba62e192de3bd13a95360447 |
|
BLAKE2b-256 | 73c520656d3935dfe8b3fae57975f1750149426c70cbd9996327d39906b470da |
Hashes for pyxll-5.7.0.post1-cp26-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | f7d0cdf37c9e127b813d5e9394392ccfc3a5118419572511bfe38219f2f16ce5 |
|
MD5 | d8f5c4448bb69f384fab3dd1ea191a2b |
|
BLAKE2b-256 | 5058bc0e71bd46aa6e418c0395e5de3386018d64d19c0bd775b1db8cf76768b6 |
Hashes for pyxll-5.7.0.post1-cp25-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | f7a5d907a8a86bc0ff41d2c99f435703bf1f6384a2a94420e77128ce94af9a9e |
|
MD5 | bf8a44587c3bb17322a2b7cd36fd6217 |
|
BLAKE2b-256 | 98d611dff79d4cc674be2f908e1c74079f2bb385168e520e19f65e5537115d98 |
Hashes for pyxll-5.7.0.post1-cp24-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 33a3fcbc4f814bac9cd06753acbfe0704ef1eb760364750dfafb9141dddca143 |
|
MD5 | 488be63e4b526dd48712dacdc8128326 |
|
BLAKE2b-256 | 73c789ae3161436dfb985059f7d43aa0b9433d7dc146f7cafc31de73708afcd6 |
Hashes for pyxll-5.7.0.post1-cp23-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 6e34f43d7b8e97de328da2c8066d162d0ced6784752773aa8cea61c27cad6458 |
|
MD5 | fc6a9b3613aba4155e1895d352a56e66 |
|
BLAKE2b-256 | 2211a94f617ac40f65112c15647b350e590295010a9046fd83420c21dcbfdf6c |