Python for Excel: Use xlwings for Data Science and Finance course is a comprehensive training program about xlwings. xlwings is used to integrate Python and Excel tools to run Python code in Excel. With xlwings, candidates can use Python libraries like Numpy, Pandas, Scipy, Matplotlib, Seaborn, and Scikit-learn in Excel.

The course is suitable for Python beginners as well as experienced developers who want to integrate Python with Excel to boost their productivity. The course includes a crash course on the basics of Python programming language. The course covers 3 comprehensive real-world projects. The course is usually available for INR 3,299 on Udemy but you can click now to get the Python for Excel: Use xlwings for Data Science and Finance Course for INR 499.

Who all can opt for this course?

  • Data Scientists and Finance Professionals looking forward to using Excel as Frontend and Python as the backend in their projects.
  • Professionals seeking to write Excel tools with clean Python code instead of VBA/Marcos.
  • Python Beginners
  • Python Developers seeking to work with Excel as GUI (Graphical User Interface).

Course Highlights

Key HighlightsDetails
Registration LinkApply Now!
PriceINR 449 (INR 3,29986% off
Duration16 hours
Student Enrollment7,622 students
InstructorAlexander Hagmann https://www.linkedin.com/in/alexanderhagmann
Topics Coveredxlwings installation and setup, running Python scripts in Excel, Matplotlib & Seaborn with Excel, etc.
Course LevelBeginner
Total Student Reviews738

Learning Outcomes

  • Automate Excel functions with clean Python code
  • Learn and master the xlwings library from 0 to 100
  • Utilize Excel as a Graphical User Interface (GUI) and use it to execute Python code
  • Create robust dashboard applications using Python and Excel’s frontend (backend)
  • Utilize Excel’s powerful data visualization tools (Matplotlib, Seaborn)
  • A customized crash course will teach you Python from scratch (for Python beginners)
  • Utilize Numpy, Pandas, and Machine Learning Libraries directly in Excel by creating UDFs (user-specified functions)
  • Python may be used to create Excel tools instead of VBA, and Excel can use your code directly
  • Python can automate Excel reports with xlwings
  • Web apps in prototype
  • With xlwings, you can create and use dynamic arrays
  • With a Python Monte Carlo Simulation, run your financial model 10,000 times or more
  • Directly import financial data into Excel from Web APIs
  • Using Run main and RunPython, Excel users can execute Python scripts
  • Python code is a powerful and clean replacement for VBA macros

Course Content

S.No.Module (Duration)Topics
1.Getting Started (44 minutes)Introduction (don´t skip!)
Course Overview (don´t skip!)
Tips: How to get the most out of this Course (don´t skip!)
FAQ / Your Questions answered
How to download and install Anaconda for Python coding
Jupyter Notebooks – let´s get started
How to work with Jupyter Notebooks
2.First Steps with xlwings (Reading and Writing Elements) (45 minutes)Introduction and Downloads
How to install xlwings
How to use xlwings as a Data Viewer
Data Viewer – Update
How to connect to an Excel Workbook
How to read and write single Values
How to assign a name
How to write Excel Functions with Python
Range Shortcuts
Case Study – Bringing it all together
3.Reading and writing many Values (26 minutes)Section Downloads
One-dimensional Data Structures
How to write Values vertically
Rows and Columns (1dim vs. 2dim)
How to read two-dimensional Data Structures
Advanced Reading with expand
How to write two-dimensional Data Structures
Range Indexing and Slicing
4.Project 1: Monte Carlo Simulations in Excel with Python (Part 1) (46 minutes)Introduction
Section Downloads
The Excel Model explained (Part 1)
The Excel Model explained (Part 2)
Running a simple Monte Carlo Simulation
A more advanced and realistic Monte Carlo Simulation
Final Considerations
5.Running Python Scripts in Excel – RunPython (50 minutes)Introduction and Downloads
Installing the xlwings add-in and other preparations
Running Python Scripts with “Run main”
Troubleshooting (Part 1)
All you need to know about VBA Macros
Running Python Scripts with “RunPython”
Troubleshooting (Part 2)
Run main vs RunPython
Excursus: Converting Jupyter Notebooks to .py
6.Project 1: Monte Carlo Simulations in Excel with Python (Part 2) (17 minutes)Introduction and Downloads
Monte Carlo Simulation with RunPython (Part 1)
Monte Carlo Simulation with RunPython (Part 2)
7.Using Matplotlib and Seaborn in Excel with xlwings (29 minutes)Introduction and Downloads
How to write a Matplotlib Plot into Excel
How to update the Plot
How to change Size and Position (Part 1)
How to change Size and Position (Part 2)
How write a Seaborn Plot into Excel
How to create Excel Charts with Python
Homework: Adding a Plot to the Monte Carlo Simulation (Project 1)
8.Project 2: Build Dashboard Apps with Excel (GUI) and Python (analytical backend) (01 hour 01 minutes)Introduction and Downloads
IMPORTANT NOTICE (Update January 23)
Stock Performance Analysis during COVID-19 with Python & Pandas (Part 1)
Stock Performance Analysis during COVID-19 with Python & Pandas (Part 2)
Stock Performance Analysis during COVID-19 with Python & Pandas (Part 3)
Building a Stock Performance Dashboard App (Part 1)
Building a Stock Performance Dashboard App (Part 2)
Improving the Source Code and Errors
9.Reading and Writing Data Structures (Numpy, Pandas) & Converters (59 minutes)Section Downloads
(Default) Converters
The Numpy Converter
The Dictionary Converter
The DataFrame Converter (Part 1)
The DataFrame Converter (Part 2)
Data Science Application: Inspecting and Manipulating DataFrames in Excel
The Pandas Series Converter
Excursus: How to load Data from Excel into Pandas with pd.read_excel()
Excursus: Advanced import with pd.read_excel()
Excursus: How to load Financial Data / Time Series with pd.read_excel()
10.User-defined Functions (UDF) and Dynamic Arrays with xlwings (Windows only) (58 minutes)Introduction and Downloads
Preparations and your first UDF
How to change the Name and Location of the Python Module
Troubleshooting (UDF)
UDFs – Behind the Scenes
More complex UDFs and the @xw.arg Decorator
How to create Numpy UDFs
UDFs and Array Formulas
How to create Dynamic Arrays with xlwings UDFs
How to create Pandas UDFs
How to add Docstrings
11.Project 3: Use Pandas UDFs in Excel for Data Science and Finance (Windows only) (38 minutes)Introduction and Downloads
IMPORTANT NOTICE (Update January 23)
How to load Financial Data from the Web into Excel with the DataReader UDF
How to resample Time Series in Excel with the resample UDF
How to calculate Financial Returns with a Pandas/Numpy UDF
How to get Summary Statistics of a Dataset with the describe UDF
How to create a Dataset´s Correlation Matrix with the corr UDF
Taken all together – the Super UDF
How to perform inner/outer/left/right joins with the merge UDF
12.APPENDIX 1: Python Crash Course for Excel Users (04 hours 45 minutes)Introduction and Overview
Section Downloads
Intro to the Time Value of Money (TVM) Concept (Theory)
Calculate Future Values (FV) with Python / Compounding
Calculate Present Values (FV) with Python / Discounting
Interest Rates and Returns (Theory)
Calculate Interest Rates and Returns with Python
Introduction to Variables
Excursus: How to add inline comments
Variables and Memory (Theory)
More on Variables and Memory
Variables – Dos, Don´ts and Conventions
The print() Function
Coding Exercise 1
TVM Problems with many Cashflows
Intro to Python Lists
Zero-based Indexing and negative Indexing in Python (Theory)
Indexing Lists
For Loops – Iterating over Lists
The range Object – another Iterable
Calculate FV and PV for many Cashflows
The Net Present Value – NPV (Theory)
Calculate an Investment Project´s NPV
Coding Exercise 2
Data Types in Action
The Data Type Hierarchy (Theory)
Excursus: Dynamic Typing in Python
Build-in Functions
How to round Floats (and Integers) with round()
More on Lists
Lists and Element-wise Operations
Slicing Lists
Slicing Cheat Sheet
Changing Elements in Lists
Sorting and Reversing Lists
Adding and removing Elements from/to Lists
Mutable vs. immutable Objects (Part 1)
Mutable vs. immutable Objects (Part 2)
Coding Exercise 3
Intro to Strings
String Replacement
Operators (Theory)
Comparison, Logical and Membership Operators in Action
Coding Exercise 4
Conditional Statements
Keywords pass, continue and break
Calculate a Project´s Payback Period
Defining your first user-defined Function
What´s the difference between Positional Arguments vs. Keyword Arguments?
How to work with Default Arguments
Coding Exercise 5
13.APPENDIX 2: Matplotlib, Numpy, Pandas and Seaborn Crash Course (03 hours 26 minutes)Downloads for this Section
Matplotlib Introduction
Line Plots
Scatter Plots
Customizing Plots (Part 1)
Customizing Plots (Part 2)
Coding Exercise 6
Modules, Packages and Libraries – No need to reinvent the Wheel
Numpy Arrays
Indexing and Slicing Numpy Arrays
Vectorized Operations with Numpy Arrays
Changing Elements in Numpy Arrays & Mutability
View vs. copy – potential Pitfalls when slicing Numpy Arrays
Numpy Array Methods and Attributes
Numpy Universal Functions
Boolean Arrays and Conditional Filtering
Coding Exercise 7
How to work with nested Lists
2-dimensional Numpy Arrays
How to slice 2-dim Numpy Arrays (Part 1)
How to slice 2-dim Numpy Arrays (Part 2)
Recap: Changing Elements in a Numpy Array / slice
How to perform row-wise and column-wise Operations
Coding Exercise 8
Intro to Tabular Data / Pandas
Create your very first Pandas DataFrame (from csv)
Pandas Display Options and the methods head() & tail()
First Data Inspection
Coding Exercise 9
Selecting Columns
Selecting one Column with the “dot notation”
Zero-based Indexing and Negative Indexing
Selecting Rows with iloc (position-based indexing)
Slicing Rows and Columns with iloc (position-based indexing)
Position-based Indexing Cheat Sheets
Selecting Rows with loc (label-based indexing)
Slicing Rows and Columns with loc (label-based indexing)
Label-based Indexing Cheat Sheets
Summary, Best Practices and Outlook
Coding Exercise 10
First Steps with Pandas Series
First Steps with Pandas Index Objects
Importing Time Series Data from csv-files
Initial Analysis / Visualization of Time Series
Seaborn Introduction
14.What´s next? (outlook and additional resources) (04 minutes)Bonus Lecture

Resources Required

  • A desktop computer capable of storing and running Python/Anaconda.
  • Stable internet connection
  • Microsoft Excel

Featured Review

Alexander Meneikis (5/5): This is a GREAT course, hands-on, practical, with relevant examples that pretty much anyone can do. He claims that his introduction to Python is the best one that exists. It certainly is one of the best I have seen.


  • Mark Lutton (5/5): It was my introduction to Anaconda which is an excellent development environment.
  • Elina Pulke (5/5): Very good course for Finance Professionals who work with Excel every day.
  • Jim Powell (5/5): Great course for learning how to use python to power excel workbooks! Also a good introduction to numpy, pandas, and matplotlib.
  • Kamil Wilczak (5/5): It’s a really great course and I have learnt a lot.


  • Alok T. (3.5/5): good content, informative but little bit slow
  • CH K. (3/5): the accent is really really weird and too difficult to understand
  • Rajarshi B. (3/5): The topic covered is important in Python and Excel, but the course delivery can be more engaging.
  • Brian M. (1/5): Too much time spent on topics not related to xlwings. Too much content labeled as “appendix” was the majority of the length of the course. Free YouTube content is significantly better than this. My rating is this low even after purchasing the course at a steep discount.

About the Author

The instructor of this course is Alexander Hagmann. He is a Data Scientist, Finance Professional, and Entrepreneur. With a 4.6 instructor rating and 10,535 reviews on Udemy, he offers 16 courses and has taught 91,211 students so far.

  • Alexander has more than 10 years of experience in the finance and investment industry as a data scientist and finance professional.
  • Additionally, he is a top-rated Udemy instructor for data analysis and manipulation using pandas.
  • Alexander began his career in the conventional finance industry before advancing gradually into data-driven and AI-driven finance roles.
  • He presently develops solutions for Robo Investing and Algorithmic Trading while working on cutting-edge Fintech initiatives.
  • His graduates hold positions in some of the biggest and most well-known IT and banking firms worldwide.
  • One thing all of Alexander’s courses have in common is their practical, real-world-proven content and principles.
  • The emphasis is clearly on understanding concepts and developing abilities rather than memorization.
  • Alexander has a Master’s in Finance and has successfully completed all three CFA Exams (he is currently no active member of the CFA Institute).

Comparison Table

ParametersPython for Excel: Use xlwings for Data Science and FinancePerformance Optimization and Risk Management for TradingThe Complete Pandas Bootcamp 2023: Data Science with Python
OffersINR 455 (INR 3,499) 87% offINR 455 (INR 3,499) 87% offINR 455 (INR 3,499) 87% off
Duration16.5 hours19.5 hours34 hours
Student Enrollments7,6244,41322,206
InstructorsAlexander HagmannAlexander HagmannAlexander Hagmann
Register HereApply Now!Apply Now!Apply Now!

Leave feedback about this

  • Rating