Power Query vs Power Pivot Vs VBA
Download in hi-res watch the video here: bit.ly/pq-pp-vba-comp
Download in hi-res & watch the video here: bit.ly/pq-pp-vba-comp
#
1
Point of Comparison
What is it?
Power Query
Data Janitor (ETL Expert)
• Extracts data from various sources
• Transforms it
• Loads it → automatic updates
Power Pivot
Data Brain (Analysis Expert)
• Analyzes large datasets
• Facilitate customized & smarter
PivotTables
Best tool for the job
2
Clean, transform, and
combine data
VBA (Macros) / Office Scripts
Excel robots (Customization Expert)
Create user forms, buttons, functions
and automations. Office Scripts works
in Excel Online, VBA for desktop only.
Not built for this
•
Combines data from various sources
•
Power Pivot only analyzes data
•
Easy, user-friendly interface
•
Data should be clean before it’s loaded
•
Records steps for automating data
to the Power Pivot Data Model
Possible, but overly complicated
•
slow on large datasets
•
cleaning & transformation
3
Handle large datasets
efficiently
Use it for ETL of large data into the
Handles millions of rows
•
Data Model
•
Not designed to perform the final
•
analysis itself
4
Create relationships
Can use it to "Merge" or "Append"
•
technique for large datasets
•
KPIs
Uses Power Query’s cleaned data for
Pivot.
6
7
sending emails
Trigger actions with
buttons/events
Define relationships between multiple
Analyze data in multiple tables
without merging; more flexible and
Not designed for this
•
No Data Model concept
•
Manually code inefficient lookups
between tables
•
More complex and error-prone
Possible, but overly complicated
Can create simple calculations
•
Not ideal for complex, dynamic
measures that dynamically respond
a cell, and must be re-run via
measures like "Year-over-Year
PivotTable filters
code to update.
•
•
Not possible
DAX creates powerful, reusable
More complex and error-prone
•
Excellent for time intelligence (YoY,
•
•
Calculations are static, written to
Lack the dynamic "context
YTD, MTD, etc.)
awareness" of DAX measures
Not possible
Made for this:
It cannot control other applications like
It cannot control external applications or
Can control Outlook to create and
Outlook or create PDFs
file creation processes
send emails or create PDFs
Not possible
Not possible
Data refresh is the only "action."
Data refresh is the only "action."
100%
You can assign macros to buttons,
shapes, or worksheet events
Only use to gather data
8
•
DAX makes this easy
Growth“ calculations
Automate tasks like
Likely to be very inefficient
compared to Power Query and
tables.
Not designed for this
5
•
the Excel grid
efficient
Do calculations and
Not designed for this
Core feature
tables, however this is not an ideal
between tables
Not limited by the number of rows in
analysis
Not designed for this
•
No GUI for intuitive data
transformation
Handles millions of rows
•
Compared to Power Query it's
Especially with DAX
Possible, but often not necessary
Create interactive
Crucial for ETL, but it doesn't create the
Powers the Pivot Charts and Slicers that
Can add advanced interactivity, like
dashboards
final charts or slicers.
make up the dashboard
buttons that change all charts at
once in ways slicers cannot
Limited
9
Limited
Schedule or chain
You can set a refresh schedule, but
tasks together
complex chaining is difficult
Same as Power Query
Full control
You can write a master macro that
runs other macros and procedures in
a specific sequence.
TEACHING YOU CAREER TRANSFORMING SKILLS
Mynda Treacy
Follow me for tips and tutorials
Follow me for tips and tutorials
© Copyright 2025