Python for Excel with PyXLL

For organizations who want to provide Python-based algorithms and analyses to end users in Excel, PyXLL makes Python a performant, flexible back-end for Excel worksheets. PyXLL streamlines deployment of new interactive analysis tools to end users to quickly roll out new strategies and algorithms. Teams in investment banks, hedge funds and engineering organizations worldwide are using PyXLL to bring the full power of the Python ecosystem to their Excel end-users.

  • Increase productivity by using a modern dynamic language - Python.
  • Reduce risk by storing code in version control instead of embedded in Excel.
  • Deploy code updates more easily to Excel users with centralized code.
  • Reduce coding iteration cycles by removing the compile-and-restart step usually associated with C++ add-ins.
  • Improve productivity and performance using the full Python ecosystem: Numpy, Pandas, SciPy and the full SciPy stack.

Webinars: See PyXLL in Action

Deploying Python to Excel with PyXLL

See how PyXLL makes it easy to write Excel add-ins to leverage the capabilities of Python and the simplicity of the presentation of Excel.

Python for Excel with PyXLL Webinar

PyXLL allows organizations to seamlessly deploy Python algorithms and models to all their Excel users. No more uncontrolled proliferation of VBA-based spreadsheet versions, no more tossing functions over the wall to get re-implemented, no more need to deploy multiple specialized applications in place of Excel-based computations. Technical teams and developers can use the full power of Python, and end users can access the results in their familiar Excel environment.

In this webinar we demonstrate how to:

  1. Use Python functions to implement financial models in Excel
  2. Reduce risk by storing code in version control instead of embedded in Excel files
  3. Develop functions with PyXLL and Python simply, and its comparison to VBA

Supercharging Excel Analytics with Python

See how the Python for Excel (PyXLL) add-in helps solve data analysis challenges with advanced Python tools and analytic engines.

Supercharging Excel Analytics with Python Webinar

Extending the native analytic capabilities of Excel or implementing Excel-backend analytics on a cluster or in the cloud with VBA, C++, and other legacy languages is challenging and time-consuming. Python’s elegant syntax and extensive ecosystem of numeric and analytic packages can greatly simplify the development of advanced analytic tools and cluster/cloud-based backend capabilities in Excel.

In this webinar we demonstrate how to:

  1. Implement Excel backend parallel computations on local clusters or cloud-based platforms such as Microsoft Azure with Python
  2. Use Python functions to implement advanced, interactive graphical analytic tools in Excel
  3. Reduce risk by storing code in GitHub version control instead of embedded VBA in Excel files
Introduction to Python for Excel with PyXLL

Easily Write Excel Add-ins

PyXLL makes it possible to write add-ins for Microsoft Excel in Python. Using simple decorators, Python code can instantly be exposed to Excel as worksheet functions, menu items or macros. Excel add-ins written using PyXLL are fast to develop, offer high performance and are easier to maintain and deploy than other methods of developing Excel add-ins.

Technical Requirements and Features

Recent versions of Microsoft Excel for Windows are supported, including Excel 2003, Excel 2007, Excel 2010 and Excel 2013 (both 32-bit and 64-bit versions of Excel 2010 and Excel 2013 are supported). PyXLL is not available for Microsoft Excel for Mac or other spreadsheet applications.

PyXLL is designed to work with all versions of Python from 2.3 to 3.3 (CPython). The standard CPython interpreter ensures compatibility with compiled CPython modules such as SWIG, Boost and Cython, as well as 3rd party packages such as NumPy, Pandas and the rest of the SciPy stack.


  • Write Excel worksheet functions in Python, which are then automatically included in the Excel Function Wizard with their Python docstrings
  • Write Excel macros in Python
  • Add menu items to Excel from Python
  • Reload and test without restarting Excel
  • Run PyXLL code outside of Excel (for unit testing, etc.) via stubs PyXLL module
  • Use win32com for calling back into Excel from PyXLL modules and for Excel event handling
  • Support for:
    • NumPy data types
    • Non-standard data types with a customizable type system
    • Large array types in Excel 2007, 2010, and 2013
    • Unicode in Excel 2007, 2010, and 2013
    • Asynchronous functions in Excel 2010 and 2013