Frequently Asked Questions about Python for Excel with PyXLL

What are the benefits of PyXLL?

With PyXLL, everything you can do in Python, you can now do in Excel. Some of the benefits include:

  • Productivity: Python is a clean, powerful language with a large analytic library ecosystem that is particularly well-featured for scientific computing applications. With PyXLL you can leverage the full capabilities of all of the Python libraries within Excel, ranging from SciPy to Pandas and NumPy to matplotlib.
  • Automated external data integration: access data from real-time web databases, feeds, and more
  • Performance: it’s straightforward to access C++, Cython code and parallel processing from Python functions
  • Speed: build prototypes quickly, without the need to compile and restart on each iteration
  • Management: instead of embedded VBA models, organizations can manage their Python code centrally and load it on start up into each user’s local Excel platform, eliminating uncontrolled version proliferation
  • Reduced risk: code is stored in version control instead of embedded in Excel
  • Familiar platform: Excel becomes your GUI for live streaming dashboards and mathematical models, all within an interface familiar to end users

Is PyXLL available within / as a part of Enthought Canopy?

PyXLL is an add-on package that must be purchased separately from Enthought Canopy. Once purchased, PyXLL is available to be installed directly from the Canopy Package Manager.

Do you have to have Enthought Canopy to use PyXLL?

No, PyXLL works with all Python distributions that use Python 2.3 to 3.5 (CPython that is). However, installing PyXLL from Canopy’s package manager is much more straightforward than with other Python distributions. Canopy performs the Excel installation automatically, pre-configures the PyXLL config file, and runs other background checks to ensure a clean execution. Also, Canopy customers can take advantage of advanced individual support from Enthought for both installation and basic initial “how-tos,” in addition to the extensive Python package library offered by Canopy.

What versions of Excel does PyXLL work with? What versions of Python?

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

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

Can PyXLL be used with OpenOffice, LibreOffice, Google Docs or other open source spreadsheet programs?

No, PyXLL can only be used with Microsoft Excel for Windows.

What versions of Windows are supported? Can I use PyXLL on a Mac or Linux OS?

PyXLL can be used on Windows 10, Windows 8.1, Windows 8, Windows 7, XP and Vista. PyXLL is not supported on the Mac OS or Linux. While Python itself is cross-platform, Excel is not really. It uses a very different architecture on Mac than on Windows, so it is not simple to port PyXLL to Mac.

For Mac or Linux users who wish to take advantage of PyXLL, you can use it (as many of us at Enthought do), in a Windows Virtual Machine such as Fusion. Your single PyXLL and Canopy licenses are good on as many physical and virtual machines as you use.

If I want to share my work with others will they also need to have PyXLL? Python?

Yes, all users who wish to view and recalculate values using the embedded Python functionality in Excel will need to have PyXLL, Python, and Excel loaded on their machines. We offer multi-user and site licenses at a significantly reduced cost to meet this need.

What happens if I send my spreadsheet to a user that does not have PyXLL or Python installed?

The results of the Excel computations, including those resulting from embedded PyXLL Python functions, are always stored in the Excel spreadsheet. If you disable auto-recalculation, you can share the spreadsheet in read-only mode. See the File > Options menu, Workbook Calculation (under Formulas in recent versions of Excel) > and select the Manual option.

I can’t install PyXLL, what do I do?

Enthought provides support for existing Canopy subscribers who purchase PyXLL as an add-on. For users who are not using Canopy, the following options are available:

How does PyXLL work?

PyXLL is an Excel add-in that enables functions written in Python to be called in Excel. Python functions can either be exposed as Excel user defined functions that can be called from worksheets, as custom menu items, or as macros.