Course Overview All Courses Blog Reserve Bootcamp Seat
Excel to AI · Day 1 of 5 ~60 minutes

Why Excel Hits a Wall — and What Comes Next

Understand exactly where Excel breaks down, install Python in 5 minutes, and write your first script that already does something Excel can't.

1
Day 1
2
Day 2
3
Day 3
4
Day 4
5
Day 5
What You'll Build Today

A Python script that reads a CSV file, filters rows by a condition, and prints a summary — the same thing you'd do with Excel filters and COUNTIF, but in code that runs automatically every time without you touching it.

1
The Problem

The Wall Every Excel User Hits

Excel is genuinely great. If you've learned pivot tables, VLOOKUP, and conditional formatting — you have real data skills. But Excel has hard limits that show up the moment your data gets serious:

  • 1 million row limit. Sales data, log files, customer records — real datasets blow past this constantly.
  • No automation. Every month you open the file, update the formulas, rerun the pivot. Same 2 hours. Every time.
  • Single file. Combining 50 monthly reports means copy-pasting 50 times. In Python it's one line.
  • No AI integration. You can't feed data to Claude from inside Excel. You can from Python.

Python doesn't replace your data knowledge. It removes the ceiling on what you can do with it.

2
Setup

Installing Python (5 Minutes)

Go to python.org/downloads and download Python 3.11 or newer. Run the installer. On Windows, check "Add Python to PATH" before clicking Install — this is the one step people miss.

Open a terminal (Terminal on Mac, Command Prompt on Windows) and verify:

bash
$ python --version
Python 3.11.9

$ pip --version
pip 24.0

Also install VS Code from code.visualstudio.com and add the Python extension. This is your editor for the rest of the course.

Mac users: If python gives an error, try python3. They're the same. You can add an alias later.

3
The Translation

Excel Concepts You Already Know, in Python

You don't start from zero. Every Excel concept has a Python equivalent. Here's the map:

In Excel you do this...In Python it's this...
Filter rows by valuedf[df['column'] == 'value']
VLOOKUP / XLOOKUPdf.merge(other_df, on='key')
Pivot Tabledf.groupby('category').sum()
COUNTIFdf['col'].value_counts()
SUMIFdf.groupby('col')['amount'].sum()
Remove duplicatesdf.drop_duplicates()
Sort by columndf.sort_values('column')

The logic is identical. The syntax is just different. By Day 3 you'll know all of these cold.

4
First Script

Your First Python Script

Create a new file called day1.py in VS Code. Type this out — don't copy-paste yet. The muscle memory matters.

pythonday1.py
# Python variables — same concept as Excel named cells
company = "Acme Corp"
revenue = 1_250_000
growth_rate = 0.14
is_profitable = True

# Print output — like typing in a cell
print(f"Company: {company}")
print(f"Revenue: ${revenue:,}")
print(f"Growth: {growth_rate:.0%}")

# A simple function — like an Excel custom formula
def project_revenue(current, rate, years):
    return current * ((1 + rate) ** years)

next_year = project_revenue(revenue, growth_rate, 1)
print(f"Projected next year: ${next_year:,.0f}")

# A list — like a single column of data
monthly_sales = [82000, 95000, 110000, 88000, 124000, 135000]
print(f"Total H1: ${sum(monthly_sales):,}")
print(f"Average: ${sum(monthly_sales)/len(monthly_sales):,.0f}")

Run it by pressing F5 in VS Code, or in the terminal:

bash
$ python day1.py
Company: Acme Corp
Revenue: $1,250,000
Growth: 14%
Projected next year: $1,425,000
Total H1: $634,000
Average: $105,667

Notice the f-string formatting. f"Revenue: ${revenue:,}" adds commas automatically. In Excel you'd set a cell format. In Python, you format in the output string. You'll use this constantly.

5
First Data File

Read a CSV in 3 Lines

Create a file called sales.csv in the same folder:

csvsales.csv
region,rep,revenue,month
East,Alice,45000,Jan
West,Bob,62000,Jan
East,Carol,38000,Jan
West,David,71000,Feb
East,Alice,52000,Feb
West,Bob,48000,Feb

Now read it with Python:

pythonread_csv.py
import csv

with open("sales.csv") as f:
    reader = csv.DictReader(f)
    rows = list(reader)

# Total revenue — like Excel SUM
total = sum(int(row["revenue"]) for row in rows)
print(f"Total revenue: ${total:,}")

# Filter by region — like Excel filter
east = [row for row in rows if row["region"] == "East"]
east_total = sum(int(r["revenue"]) for r in east)
print(f"East region: ${east_total:,}")

Tomorrow you'll use pandas, which makes all of this even shorter. But today you're seeing the raw mechanics so you know what pandas is actually doing for you.

Day 1 Complete

  • Python installed and VS Code configured
  • Understand exactly where Excel hits its limits
  • Know the Python equivalents of common Excel operations
  • Wrote and ran your first Python script with variables and functions
  • Read a CSV file and filtered data with Python
Day 1 Done

Tomorrow: Things Excel Simply Can't Do

Day 2 shows you the operations that are impossible in Excel and trivial in Python — combining 50 files, cleaning messy data, and working with datasets that would crash Excel.

Day 2: Things Excel Can't Do
Finished this lesson?