Skip to content


Folders and files

Last commit message
Last commit date

Latest commit


Repository files navigation

Notice : ExcelPython has been integrated into xlwings! Going forwards ExcelPython will be no longer be actively maintained and any further development work will take place within the context of xlwings.

ExcelPython v2

Write Excel user-defined functions and macros in Python!

from xlpython import *

@xlarg("x", "nparray", 2)
@xlarg("y", "nparray", 2)
def matrixmult(x, y):


Check out the tutorials to get started! The only prerequisites are Excel and Python (2.6 - 3.x) with PyWin32 installed.

About ExcelPython

ExcelPython is a lightweight, easily distributable library for interfacing Excel and Python. It enables easy access to Python scripts from Excel VBA, allowing you to substitute VBA with Python for complex automation tasks which would be facilitated by Python's extensive standard library while sparing you the complexities of Python COM programming.

Do you like ExcelPython and find it useful? If so please consider donating something to support its continued development and get your name on the donor list!

Click here to lend your support to: ExcelPython and make a donation at !

Help me!

Check out the docs folder for tutorials to help you get started and links to other resources. Failing that, try the issues section or the discussion forum on SourceForge.

If you still don't find your answer, need more help, find a bug, think of a useful new feature, or just want to give some feedback by letting us know what you're doing with ExcelPython, please go ahead and create an issue ticket!