Excel Practice Online: 15 Business Exercises & Solutions
Practice Excel formulas online with 15 real business exercises. Master XLOOKUP, INDEX MATCH, dynamic arrays, pivot tables, and financial modeling.
Watching tutorials creates the illusion of mastery. You watch an instructor write an =INDEX(..., MATCH(...)) formula on YouTube, nod along, and feel prepared. But the moment a hiring manager hands you an unformatted 20,000-row enterprise transaction extract during a 45-minute technical assessment, blanking on syntax, encountering silent #SPILL! errors, or corrupting row alignment through a careless sort becomes common.
To transition from spreadsheet novice to commercial data analyst earning ₹5–12 LPA ($65,000–$90,000), you must shift from passive observation to active excel practice online. Solving targeted excel practical questions in production-grade business contexts builds the mental reflexes required to troubleshoot messy schemas under deadline pressure.
This guide provides 15 comprehensive business exercises grouped into 5 foundational analytical disciplines: relational lookups, multi-condition aggregation, modern dynamic arrays, pivot table business intelligence, and financial modeling.
Before solving the individual scenarios, examine the formula decision architecture below to choose the optimal retrieval function for any spreadsheet challenge.
+-----------------------------------------------------------------------------+
| EXCEL LOOKUP & RETRIEVAL FORMULA DECISION TREE |
+-----------------------------------------------------------------------------+
| |
| Do you need to search and return data across rows or columns? |
| | |
| +---> [ Simple 1D Lookup ] |
| | | |
| | +---> Microsoft 365 / Excel 2021+? |
| | | |-- YES: Use XLOOKUP (fast, exact match default) |
| | | +-- NO: Use INDEX + MATCH or legacy VLOOKUP |
| | |
| +---> [ 2D Matrix (Row + Column Intersection) ] |
| | | |
| | +---> Nested XLOOKUP: =XLOOKUP(row, r_rng, XLOOKUP(col...)|
| | +---> INDEX + MATCH: =INDEX(grid, MATCH(r), MATCH(c)) |
| | |
| +---> [ Dynamic Multi-Row Extraction ] |
| | | |
| | +---> Filter criteria met? =FILTER(data, conditions) |
| | +---> Sorted & Deduplicated? =SORT(UNIQUE(range)) |
| | |
| +---> [ Approximate Tier / Tax Bracket ] |
| | |
| +---> XLOOKUP with match_mode -1 (exact or next smaller) |
| +---> VLOOKUP with TRUE flag (table sorted ascending) |
| |
+-----------------------------------------------------------------------------+Exercise Catalog: 15 Real-World Business Scenarios
Use this overview matrix to navigate the 15 exercises and match your practice session to specific spreadsheet competencies:
| Feature / Criteria |
|---|
If you need structured practice datasets to accompany these drills, explore our companion directory of 10 Free Excel Practice Sheets and Datasets.
Discipline 1: Lookup & Relational Modeling (Exercises 1–3)
Relational modeling in Excel involves joining data across multiple worksheets and tables without duplicating raw storage. Modern enterprise analytics favors functions that fail safely and do not rely on fragile column index integers.
Exercise 1: Two-Way Matrix Lookup with Nested XLOOKUP
Business Scenario
A global freight forwarding company maintains a shipping matrix where transportation cost per kilogram depends on two independent dimensions: the destination Shipping Zone (rows) and the package Weight Tier (columns). You must look up the exact rate for an order placed in Zone B weighing 2.0kg.
Raw Sample Table
Set up the matrix in cells A1:E5:
| Zone | 0.5kg | 1.0kg | 2.0kg | 5.0kg |
|---|---|---|---|---|
| Zone A | 45 | 75 | 130 | 280 |
| Zone B | 60 | 95 | 170 | 360 |
| Zone C | 80 | 125 | 220 | 480 |
| Zone D | 110 | 170 | 310 | 690 |
Order Input Parameters:
- Target Zone (Cell
G2):Zone B - Target Weight (Cell
H2):2.0kg
Exact Formula & Solution
Enter this formula in Cell I2:
=XLOOKUP(G2, A2:A5, XLOOKUP(H2, B1:E1, B2:E5))Alternative Legacy Formula (for older Excel versions):
=INDEX(B2:E5, MATCH(G2, A2:A5, 0), MATCH(H2, B1:E1, 0))Step-by-Step Logic Breakdown
- Inner XLOOKUP:
XLOOKUP(H2, B1:E1, B2:E5)scans the horizontal header rangeB1:E1for"2.0kg". Once matched at Column D, it returns the entire vertical column slice:{130; 170; 220; 310}. - Outer XLOOKUP:
XLOOKUP(G2, A2:A5, ...)takes that vertical slice as its return array. It scansA2:A5for"Zone B"(Row 3) and extracts the corresponding value from the slice:170. - Why this beats VLOOKUP: Traditional
VLOOKUPrequires calculating a hard-coded column index likeMATCH(H2, A1:E1, 0). If an analyst inserts a new column between Zone and 0.5kg,VLOOKUPbreaks or returns the wrong tier. NestedXLOOKUPbinds directly to array coordinates. For a side-by-side comparison, read our complete Excel VLOOKUP vs XLOOKUP Guide.
Solved Output Table
| Target Zone | Target Weight | Quoted Rate (INR) | Formula Used |
|---|---|---|---|
| Zone B | 2.0kg | 170 | =XLOOKUP(G2, A2:A5, XLOOKUP(H2, B1:E1, B2:E5)) |
Exercise 2: Approximate Match Tiered Sales Commission
Business Scenario
A commercial SaaS sales team compensates Account Executives using an accelerated tiered commission structure. Higher revenue hurdles unlock progressively higher percentage payouts on the representative's entire book of business.
Commission Schedule (Cells E1:F6):
| Revenue Hurdle (INR) | Commission Rate |
|---|---|
| 0 | 3.0% |
| 500000 | 5.0% |
| 1000000 | 7.5% |
| 2000000 | 10.0% |
| 3500000 | 12.5% |
Raw Sample Table
Sales Rep Closed Performance (Cells A1:B5):
| Rep Name | Closed Revenue (INR) |
|---|---|
| Vikram Joshi | 420000 |
| Sneha Patel | 1450000 |
| Rahul Verma | 2850000 |
| Priya Nair | 950000 |
Exact Formula & Solution
In Cell C2 (header: Commission_Rate), enter:
=XLOOKUP(B2, $E$2:$E$6, $F$2:$F$6, 0, -1)In Cell D2 (header: Total_Commission_Payout), compute the cash payout:
=B2 * C2Step-by-Step Logic Breakdown
- The 5th Argument (
match_mode = -1): By passing-1intoXLOOKUP, you instruct Excel to search for an exact match, and if not found, select the next smaller item. - Evaluation for Sneha Patel (₹14,50,000):
- Excel compares 1,450,000 against the hurdles:
0,500,000,1,000,000,2,000,000. - Since 1,450,000 is less than 2,000,000,
XLOOKUPdrops back to the next lower tier:1,000,000. - It returns
7.5%. Total payout:1450000 * 0.075 = ₹1,08,750.
- Excel compares 1,450,000 against the hurdles:
- Legacy Alternative: You can also use
=VLOOKUP(B2, $E$2:$F$6, 2, TRUE). However,VLOOKUPwithTRUEstrictly requires the lookup column to be sorted ascending. If someone sorts the table descending,VLOOKUPsilently corrupts all payouts.
Solved Output Table
| Rep Name | Closed Revenue | Commission Rate | Total Commission Payout |
|---|---|---|---|
| Vikram Joshi | ₹ 4,20,000 | 3.0% | ₹ 12,600 |
| Sneha Patel | ₹ 14,50,000 | 7.5% | ₹ 1,08,750 |
| Rahul Verma | ₹ 28,50,000 | 10.0% | ₹ 2,85,000 |
| Priya Nair | ₹ 9,50,000 | 5.0% | ₹ 47,500 |
Exercise 3: Graceful Error Handling & Fallback Dual-Table Lookups
Business Scenario
During an enterprise company merger, sales leads are distributed across two separate CRM databases: Table_EnterpriseCRM and Table_SmbCRM. When an inbound lead arrives, your automated routing sheet must search the Enterprise system first. If the lead is not found, search the SMB system. If absent in both, return "Unassigned Inbound Lead" without displaying #N/A.
Raw Sample Table
- Lead Intake (Cells
A1:B4):LEAD-101,LEAD-804,LEAD-999 - Enterprise CRM (Cells
D1:E3):LEAD-101→Ananya Roy (Key Accounts)LEAD-102→Karan Shah (Strategic)
- SMB CRM (Cells
G1:H3):LEAD-804→Pooja Mehta (Commercial)LEAD-805→Amit Verma (Mid-Market)
Exact Formula & Solution
In Cell B2 of your intake sheet, enter:
=XLOOKUP(A2, D$2:D$3, E$2:E$3, XLOOKUP(A2, G$2:G$3, H$2:H$3, "Unassigned Inbound Lead"))Step-by-Step Logic Breakdown
- Primary Search: The outer
XLOOKUPsearchesA2inside the Enterprise rangeD$2:D$3. - The 4th Argument (
if_not_found): When an exact match fails in Enterprise, instead of returning an error, Excel evaluates the expression passed intoif_not_found. - Secondary Fallback Search: The inner
XLOOKUPsearches the SMB rangeG$2:G$3. If found, it returns the SMB account manager. - Final Fallback: If the inner lookup also fails, its own
if_not_foundreturns the string"Unassigned Inbound Lead". - This nested structure replaces messy legacy formulas like
=IFNA(VLOOKUP(...), IFNA(VLOOKUP(...), "Unassigned")).
Solved Output Table
| Inbound Lead ID | Assigned Account Executive | Routing Status |
|---|---|---|
| LEAD-101 | Ananya Roy (Key Accounts) | Routed via Enterprise CRM |
| LEAD-804 | Pooja Mehta (Commercial) | Routed via SMB CRM |
| LEAD-999 | Unassigned Inbound Lead | Requires Manual SDR Triage |
Discipline 2: Multi-Condition Aggregations (Exercises 4–6)
Data analysts rarely sum entire columns unconditionally. You will be asked to compute trailing 30-day volumes, aggregate SKUs matching specific naming patterns, or compute volume-weighted unit pricing.
Exercise 4: Dynamic Rolling Date-Window SUMIFS
Business Scenario
Executive sales leaders review cash collected over rolling 30-day operational windows. Instead of manually updating date criteria filters every Monday morning, you must construct a formula that calculates total realized revenue for deals marked "Closed Won" signed in the trailing 30 calendar days relative to TODAY().
Raw Sample Table
Assume today is 2026-03-15. Raw transactions in cells A1:E6:
| Deal_ID | Client | Close_Date | Deal_Value (INR) | Deal_Status |
|---|---|---|---|---|
| D-201 | Zeta Logistics | 2026-03-10 | 450000 | Closed Won |
| D-202 | Apex Financial | 2026-03-02 | 180000 | Under Review |
| D-203 | Horizon Retail | 2026-02-24 | 320000 | Closed Won |
| D-204 | Quantum Labs | 2026-02-01 | 850000 | Closed Won |
| D-205 | Nimbus Health | 2026-03-12 | 290000 | Closed Won |
Exact Formula & Solution
Enter this formula into your executive KPI summary card:
=SUMIFS(D2:D6, E2:E6, "Closed Won", C2:C6, ">="&(TODAY()-30), C2:C6, "<="&TODAY())Step-by-Step Logic Breakdown
- Sum Range (
D2:D6): Column containing numeric cash values to aggregate. - Criteria 1 (
E2:E6, "Closed Won"): Restricts summation to successful contracts. - Criteria 2 (
C2:C6, ">="&(TODAY()-30)): Sets the lower date boundary. Notice the syntax: the logical comparison operator">="must be enclosed in quotes and concatenated (&) with the date function(TODAY()-30). For2026-03-15, this evaluates to">=2026-02-13". - Criteria 3 (
C2:C6, "<="&TODAY()): Prevents accidentally counting post-dated future transactions. - Evaluation:
D-201(March 10, Won): Included (₹4,50,000)D-202(March 2, Review): Excluded (Status)D-203(Feb 24, Won): Included (₹3,20,000)D-204(Feb 01, Won): Excluded (Date is 42 days ago, outside 30-day window)D-205(March 12, Won): Included (₹2,90,000)- Total Sum =
450000 + 320000 + 290000 = ₹10,60,000.
Solved Output Table
| Analytical KPI Metric | Computed Value | Verification Note |
|---|---|---|
| Trailing 30-Day Won Revenue | ₹ 10,60,000 | Excludes D-202 (Review) and D-204 (Over 30 days old) |
Exercise 5: Wildcard Matching for SKU Groupings with COUNTIFS & SUMIFS
Business Scenario
An omnichannel hardware retailer generates SKUs using structured taxonomy codes: [Region]-[Category]-[Item]-[Batch]. Example: IN-ELEC-401-26 denotes an Indian electronics SKU. The supply chain director requests an automated count of delivered units and total revenue generated by all electronics items (ELEC), regardless of their origin region or batch number.
Raw Sample Table
Sales Ledger in cells A1:D6:
| SKU_Barcode | Units_Sold | Unit_Revenue (INR) | Delivery_Status |
|---|---|---|---|
| IN-ELEC-401-26 | 14 | 28000 | Delivered |
| US-APPR-102-25 | 40 | 16000 | Delivered |
| IN-ELEC-809-26 | 8 | 42000 | Delivered |
| EU-HOME-301-26 | 22 | 31000 | In Transit |
| SG-ELEC-105-25 | 12 | 19500 | Returned |
Exact Formula & Solution
In your analytical summary block:
' 1. Total Delivered Transactions for Electronics SKUs:
=COUNTIFS(A2:A6, "*-ELEC-*", D2:D6, "Delivered")
' 2. Total Net Revenue for Delivered Electronics SKUs:
=SUMIFS(C2:C6, A2:A6, "*-ELEC-*", D2:D6, "Delivered")Step-by-Step Logic Breakdown
- The Asterisk (
*) Wildcard: In Excel formulas,*matches any number of characters. Placing asterisks on both sides of-ELEC-("*-ELEC-*") instructs Excel to match any text containing-ELEC-anywhere in the cell. - Delivered Filter: Combining this with
D2:D6, "Delivered"excludesSG-ELEC-105-25(which was returned). - Evaluation:
IN-ELEC-401-26(Delivered): Matches. Units = 14, Rev = ₹28,000.IN-ELEC-809-26(Delivered): Matches. Units = 8, Rev = ₹42,000.- Total Transactions Count =
2. Total Revenue =₹70,000.
Solved Output Table
| Target Product Line | Delivered Orders Count | Delivered Net Revenue (INR) |
|---|---|---|
| All Regional Electronics (-ELEC-) | 2 orders | ₹ 70,000 |
Exercise 6: Weighted Average Unit Cost with SUMPRODUCT
Business Scenario
A manufacturing assembly plant procures microcontrollers across four different supplier purchase orders. Because shipping container availability fluctuated, each order had different volumes, unit wholesale prices, and freight surcharges. Calculating the arithmetic mean of the price column would misstate inventory value. You must compute the true Weighted Average Cost per Unit.
Raw Sample Table
Purchase Order Receipts (Cells A1:D5):
| PO_Number | Units_Received | Unit_Base_Price (INR) | Freight_Surcharge_Unit |
|---|---|---|---|
| PO-991 | 5000 | 120 | 15 |
| PO-992 | 12000 | 110 | 12 |
| PO-993 | 3000 | 135 | 18 |
| PO-994 | 8000 | 115 | 14 |
Exact Formula & Solution
Compute the weighted average total landing cost per unit:
=SUMPRODUCT(B2:B5, C2:C5 + D2:D5) / SUM(B2:B5)Step-by-Step Logic Breakdown
- Element-by-Element Summation:
C2:C5 + D2:D5creates an in-memory array of total delivered costs per unit for each order:{135; 122; 153; 129}. - SUMPRODUCT Multiplication:
SUMPRODUCT(B2:B5, {135; 122; 153; 129})multiplies units by landing cost for each shipment and sums them:(5000 * 135) + (12000 * 122) + (3000 * 153) + (8000 * 129)= 675,000 + 1,464,000 + 459,000 + 1,032,000 = ₹36,30,000(Total Landing Outlay).
- Denominator:
SUM(B2:B5)calculates total volume:5000 + 12000 + 3000 + 8000 = 28,000 units. - Result:
3630000 / 28000 = ₹129.64per unit. - Why this matters: A naive average of unit costs
AVERAGE(C2:C5 + D2:D5)yields₹134.75. Using the naive average overstates inventory asset value on your balance sheet by over ₹1,43,000.
Solved Output Table
| Metric | Correct Weighted Valuation | Naive Simple Average | Accounting Variance |
|---|---|---|---|
| Landing Cost per Unit | ₹ 129.64 | ₹ 134.75 | - ₹ 5.11 / unit |
| Total Inventory Value (28,000 units) | ₹ 36,30,000 | ₹ 37,73,000 | - ₹ 1,43,000 overrun |
Practice Real-World Excel with Guided Business Scenarios
Master Excel for data analytics step-by-step on Topfolio. All lessons are 100% free to learn with an optional ₹99 verified certificate.
Start Free Excel CourseDiscipline 3: Dynamic Array Transformation (Exercises 7–9)
Microsoft 365 and modern Excel engines feature native dynamic arrays. A single formula typed into one cell can spill a filtered, sorted, or transformed grid across adjacent rows and columns automatically.
Exercise 7: Multi-Criteria Segment Reporting with Spilled FILTER()
Business Scenario
A Customer Success Director requests a live, automated exception report listing all Enterprise client accounts whose Health Score has dropped below 60 and whose account status is currently Active.
Raw Sample Table
Customer Health Ledger in cells A1:E6:
| Account_ID | Company_Name | Tier | Health_Score | Account_Status |
|---|---|---|---|---|
| AC-101 | Alpha Logistics | Enterprise | 54 | Active |
| AC-102 | Beta Retail | Starter | 42 | Active |
| AC-103 | Gamma Cloud | Enterprise | 88 | Active |
| AC-104 | Delta Health | Enterprise | 38 | Active |
| AC-105 | Epsilon Media | Enterprise | 49 | Churned |
Exact Formula & Solution
In your report tab, enter this formula in Cell G2:
=FILTER(A2:E6, (C2:C6 = "Enterprise") * (D2:D6 < 60) * (E2:E6 = "Active"), "No At-Risk Enterprise Accounts Found")Step-by-Step Logic Breakdown
- Array Argument (
A2:E6): The range of columns to return in the output view. - Boolean Array Multiplication (
*): Excel dynamic arrays use asterisk multiplication to represent logicalANDconditions:(C2:C6 = "Enterprise")returns{TRUE; FALSE; TRUE; TRUE; TRUE}(D2:D6 < 60)returns{TRUE; TRUE; FALSE; TRUE; TRUE}(E2:E6 = "Active")returns{TRUE; TRUE; TRUE; TRUE; FALSE}- Multiplying these three arrays pairwise produces:
{1; 0; 0; 1; 0}.
- Extraction: Excel outputs rows where the result is
1:- Row 2 (
Alpha Logistics, score 54, Active) - Row 5 (
Delta Health, score 38, Active) - Notice that
Epsilon Mediais excluded because its status isChurned.
- Row 2 (
- Handling
#SPILL!Errors: Ensure the cells below and to the right ofG2are completely clear. If a single character occupies cellH3, the formula throws#SPILL!.
Solved Output Table
| Account_ID | Company_Name | Tier | Health_Score | Account_Status |
|---|---|---|---|---|
| AC-101 | Alpha Logistics | Enterprise | 54 | Active |
| AC-104 | Delta Health | Enterprise | 38 | Active |
Exercise 8: Deduplication and Categorical Grouping with SORT(UNIQUE())
Business Scenario
You are building an operational data entry template. The raw department column in your transactional history contains duplicates, empty blank rows, and irregular spacing. You must extract a clean, distinct, alphabetically sorted department list to power a validation dropdown.
Raw Sample Table
Column A (Cells A1:A8):
Department
Engineering
Marketing
Engineering
Finance
marketing
SalesExact Formula & Solution
Enter this formula into Cell C2:
=SORT(UNIQUE(FILTER(TRIM(PROPER(A2:A8)), TRIM(A2:A8) <> "")))Step-by-Step Logic Breakdown
- Text Normalization:
TRIM(PROPER(A2:A8))cleans excess spaces and normalizes case so"marketing"and"Marketing"resolve to the same value. - Filtering Out Blanks:
FILTER(..., TRIM(A2:A8) <> "")discards completely empty cells before deduplication. - Deduplication:
UNIQUE(...)evaluates the remaining array and discards duplicate occurrences ofEngineeringandMarketing. - Sorting:
SORT(...)alphabetizes the resulting distinct array:{Engineering; Finance; Marketing; Sales}. - Using the Spill in Dropdowns: In your Data Validation dialog, you can reference this dynamic array in the Source box by appending a hashtag:
=C2#. As departments are added to the source, the dropdown list updates automatically.
Solved Output Table
| Spilled Distinct Departments (Cell C2#) |
|---|
| Engineering |
| Finance |
| Marketing |
| Sales |
Exercise 9: Untangling Delimited ERP Strings with TEXTSPLIT & TEXTBEFORE
Business Scenario
A legacy ERP export combines transaction details into single, semi-colon delimited strings in Column A: ORD-9042;John Doe;Bangalore, KA;18500.00. You need to isolate the Order ID, Customer Name, State, and numeric Amount into dedicated analytical columns without using the static Text-to-Columns wizard.
Raw Sample Table
Cell A2: ORD-9042;John Doe;Bangalore, KA;18500.00
Cell A3: ORD-9043;Sneha Rao;Mumbai, MH;42000.00
Exact Formula & Solution
- To spill all 4 fields across Columns B, C, D, E in a single formula:
excel
=TEXTSPLIT(A2, ";") - To extract specific isolated fields directly:
excel
' 1. Order ID (text before first semicolon): =TEXTBEFORE(A2, ";") ' 2. Customer Name (text between 1st and 2nd semicolon): =TEXTBEFORE(TEXTAFTER(A2, ";"), ";") ' 3. State Code (text after comma inside address block): =TRIM(TEXTBEFORE(TEXTAFTER(A2, ","), ";")) ' 4. Numeric Order Amount (coerced to real number with double unary): =--TEXTAFTER(A2, ";", 3)
Step-by-Step Logic Breakdown
TEXTSPLIT(A2, ";")splits the string across columns along the delimiter;.- For targeted extraction,
TEXTAFTER(A2, ";", 3)targets the substring following the 3rd occurrence of;(18500.00). - The double unary operator
--converts the extracted text string"18500.00"into a true floating-point number, enabling downstream mathematical calculations. - For deeper data hygiene techniques, explore our Excel Data Cleaning Guide.
Solved Output Table
| Order_ID | Customer_Name | State | Order_Amount (Numeric INR) |
|---|---|---|---|
| ORD-9042 | John Doe | KA | ₹ 18,500.00 |
| ORD-9043 | Sneha Rao | MH | ₹ 42,000.00 |
Discipline 4: Pivot Table & Business Intelligence Scenarios (Exercises 10–12)
Pivot Tables summarize vast multidimensional tables without writing manual array equations. Mastering calculated fields and custom value displays separates junior spreadsheet users from business intelligence analysts.
Exercise 10: Pivot Table Calculated Fields for Gross Margin %
Business Scenario
A category manager reviews divisional merchandising profitability. Creating a helper column in the raw transactional table to calculate margin percentage and then averaging that column inside a Pivot Table introduces a mathematical error called Simpson's Paradox. You must configure a Calculated Field that computes total gross profit first before dividing by total revenue.
Raw Sample Table
Raw Transactions in Table_Merch (Cells A1:D5):
| Transaction_ID | Category | Revenue (INR) | COGS (INR) |
|---|---|---|---|
| TX-01 | Audio | 10000 | 4000 |
| TX-02 | Audio | 2000 | 1800 |
| TX-03 | Wearables | 50000 | 30000 |
| TX-04 | Wearables | 15000 | 12000 |
Step-by-Step Configuration
- Click any cell inside
Table_Merchand insert a Pivot Table. - Drag
Categoryinto Rows. - Drag
RevenueandCOGSinto Values. - With the Pivot Table active, navigate to the ribbon: PivotTable Analyze → Fields, Items, & Sets → Calculated Field.
- Name the field:
Gross_Margin_Pct. - Enter formula:
=(Revenue - COGS) / Revenue. - Click Add, then OK.
- Select the resulting values column and format as Percentage (
0.0%).
Mathematical Explanation
- Look at the
Audiocategory:- Row 1 margin:
(10000 - 4000) / 10000 = 60.0% - Row 2 margin:
(2000 - 1800) / 2000 = 10.0% - If you naively average these percentages, you get
(60% + 10%) / 2 = 35.0%. - The true category total is
Revenue = 12000,COGS = 5800. - True Weighted Margin:
(12000 - 5800) / 12000 = 51.67%. - Calculated fields always aggregate sums across rows before evaluating division, ensuring mathematical accuracy. Read more in our Excel Pivot Tables Guide.
- Row 1 margin:
Solved Output Table
| Category | Total Revenue (INR) | Total COGS (INR) | Gross Margin % (Calculated Field) |
|---|---|---|---|
| Audio | ₹ 12,000 | ₹ 5,800 | 51.7% |
| Wearables | ₹ 65,000 | ₹ 42,000 | 35.4% |
| Total | ₹ 77,000 | ₹ 47,800 | 37.9% |
Exercise 11: Year-over-Year (YoY) Revenue Growth via "Show Values As"
Business Scenario
A multi-unit retail franchise evaluates regional quarterly expansion. Leadership needs to see quarter-over-quarter and year-over-year revenue percentage growth side-by-side with raw sales totals without writing custom off-table formulas.
Raw Sample Table
Sales Ledger:
STR-101,Q1,2024,₹ 12,00,000STR-101,Q1,2025,₹ 15,00,000STR-101,Q1,2026,₹ 18,75,000
Step-by-Step Configuration
- Insert a Pivot Table.
- Drag
Quarterto Rows. - Drag
Fiscal_Yearto Columns. - Drag
Sales_Amountto Values twice. - Click the second instance of
Sales_Amountin the Values box and select Value Field Settings. - Switch to the tab: Show Values As.
- In the dropdown, select: % Difference From.
- Set Base Field to
Fiscal_Yearand Base Item to(previous). - Rename the field header to
YoY Growth %.
Solved Output Table
| Quarter | 2024 Revenue | 2025 Revenue | 2025 YoY % | 2026 Revenue | 2026 YoY % |
|---|---|---|---|---|---|
| Q1 | ₹ 12,00,000 | ₹ 15,00,000 | + 25.0% | ₹ 18,75,000 | + 25.0% |
| Q2 | ₹ 14,00,000 | ₹ 16,10,000 | + 15.0% | ₹ 19,32,000 | + 20.0% |
Exercise 12: VIP Pareto Top N Customer Revenue Slicing
Business Scenario
To execute an account-based retention strategy, marketing needs a dynamic list displaying only the Top 3 revenue accounts for each operating territory. The list must automatically re-calculate whenever an executive clicks a regional Slicer button.
Step-by-Step Configuration
- Build a Pivot Table with
Account_Namein Rows andSum of Net_Revenuein Values. - Click the row label filter arrow on the
Account_Nameheader. - Choose Value Filters → Top 10....
- Change the settings to: Show Top 3 Items by Sum of Net_Revenue.
- Go to PivotTable Analyze → Insert Slicer and check Region.
- When you click
"North"in the slicer, the pivot table instantly isolates the top 3 contributors in the North region.
Solved Output Table (North Region Sliced)
| Rank | Account Name | Region | Attributed Revenue (INR) |
|---|---|---|---|
| 1 | Apex Global Systems | North | ₹ 45,00,000 |
| 2 | Delhi Cloud Works | North | ₹ 38,50,000 |
| 3 | Himalayan Agro | North | ₹ 29,00,000 |
Discipline 5: Financial & Operational Modeling (Exercises 13–15)
Financial modeling tests your ability to translate commercial contracts and accounting mechanics into dynamic spreadsheet engines.
Exercise 13: Monthly Commercial Loan Amortization Schedule (PMT, PPMT, IPMT)
Business Scenario
A growing logistics startup secures a commercial equipment loan of ₹25,00,000 at an annual interest rate of 9.6% to be repaid in equal monthly installments over 36 months. You must build an amortization schedule tracking the exact split between principal reduction and interest expense for each monthly payment.
Loan Input Assumptions
- Principal Borrowed (Cell
B1):2500000 - Annual Interest Rate (Cell
B2):0.096 - Loan Term in Months (Cell
B3):36
Exact Formulas & Solution
-
Total Fixed Monthly Equated Payment (Cell
B4):excel=PMT(B2/12, B3, -B1)Evaluation:
=PMT(0.096/12, 36, -2500000) = ₹80,188.74 -
In Month 1 of your schedule (where Month number
t = 1is in CellA7):excel' 1. Principal Repayment Component: =PPMT($B$2/12, A7, $B$3, -$B$1) ' 2. Interest Expense Component: =IPMT($B$2/12, A7, $B$3, -$B$1) ' 3. Ending Remaining Loan Balance: =Beginning_Balance - Principal_Repayment
Step-by-Step Logic Breakdown
- Monthly Compounding: Divide annual rate by 12 (
B2/12 = 0.8%per month). - Cash Flow Sign Convention: In financial functions, cash outflows are negative. Passing
-B1ensures the resulting installment is displayed as a positive figure. - Internal Verification: For every single month,
PPMT + IPMTequalsPMT. In Month 1:- Interest:
2500000 * 0.008 = ₹20,000.00 - Principal:
80188.74 - 20000.00 = ₹60,188.74 - Total Installment:
₹80,188.74.
- Interest:
Solved Output Table (First 3 Months)
| Month (t) | Beginning Balance | Total Monthly Payment | Principal (PPMT) | Interest (IPMT) | Ending Balance |
|---|---|---|---|---|---|
| 1 | ₹ 25,00,000.00 | ₹ 80,188.74 | ₹ 60,188.74 | ₹ 20,000.00 | ₹ 24,39,811.26 |
| 2 | ₹ 24,39,811.26 | ₹ 80,188.74 | ₹ 60,670.25 | ₹ 19,518.49 | ₹ 23,79,141.01 |
| 3 | ₹ 23,79,141.01 | ₹ 80,188.74 | ₹ 61,155.61 | ₹ 19,033.13 | ₹ 23,17,985.40 |
Exercise 14: Sensitivity & Break-Even Modeling with Goal Seek
Business Scenario
A B2B SaaS startup has ₹6,00,000 in fixed monthly overhead (engineering salaries, server costs, office rent) and a variable cost of ₹150 per user per month. Marketing forecasts signing up 2,500 active users. The executive board requires a Target Monthly Profit of ₹3,00,000. What monthly subscription price per user must the company charge to achieve this target?
Model Cell Mapping
- Fixed Overhead (Cell
B1):600000 - Variable Cost / User (Cell
B2):150 - Target Users (Cell
B3):2500 - Subscription Price / User (Cell
B4): [Input to solve] - Total Revenue (Cell
B5):=B3 * B4 - Total Cost (Cell
B6):=B1 + (B2 * B3) - Net Operating Profit (Cell
B7):=B5 - B6
Exact Algebraic Formula & Goal Seek Execution
-
Direct Formula to place in Cell
B4:excel=(B1 + Target_Profit + (B2 * B3)) / B3Evaluating with Target Profit =
300000:=(600000 + 300000 + (150 * 2500)) / 2500 = (900000 + 375000) / 2500 = ₹510.00. -
Using Excel's Native Goal Seek Tool:
- Navigate to ribbon: Data → What-If Analysis → Goal Seek (shortcut:
Alt + A + W + G). - Set Cell:
B7(Net Operating Profit). - To Value:
300000. - By Changing Cell:
B4(Subscription Price). - Click OK. Excel iteratively converges on
₹510.00.
- Navigate to ribbon: Data → What-If Analysis → Goal Seek (shortcut:
Solved Output Table
| Financial Component | Break-Even Price (₹0 Profit) | Target Profit Price (₹3,00,000 Profit) |
|---|---|---|
| Fixed Costs | ₹ 6,00,000 | ₹ 6,00,000 |
| Variable Costs (2,500 users) | ₹ 3,75,000 | ₹ 3,75,000 |
| Total Costs Outlay | ₹ 9,75,000 | ₹ 9,75,000 |
| Required Monthly User Price | ₹ 390.00 | ₹ 510.00 |
Exercise 15: Cascading Dependent Dropdowns via Modern Dynamic Spills
Business Scenario
You are constructing a warehouse shipment intake portal. When an operator selects a Country in Cell A2, the dropdown in Cell B2 (State) must dynamically restrict its choices exclusively to states within that country. When the state is chosen, Cell C2 (Warehouse Hub) must restrict its choices to valid facilities in that state.
Master Reference Mapping Table
Maintained on Tab Ref_Geo in cells A1:C7:
| Country | State | Warehouse_Hub |
|---|---|---|
| India | Karnataka | BLR-Central-Hub |
| India | Karnataka | BLR-Airport-Logistics |
| India | Maharashtra | MUM-Port-Terminal |
| India | Maharashtra | PNE-Express-Depot |
| USA | California | LAX-Air-Freight |
| USA | Texas | DFW-Distribution-Center |
Exact Formula & Data Validation Setup
- In a calculation staging sheet, generate the spilled list of states filtered by the user's country selection (Cell
A2):excel' Enter in Cell Staging!E2: =SORT(UNIQUE(FILTER(Ref_Geo!$B$2:$B$7, Ref_Geo!$A$2:$A$7 = Form!$A$2))) - Configure Data Validation for the State dropdown (Cell
Form!B2):- Open Data → Data Validation.
- Allow: List.
- Source:
=Staging!$E$2#(Notice the#spill reference operator).
- In staging Cell
Staging!F2, generate the hub list filtered by the chosen state (CellForm!B2):excel=SORT(UNIQUE(FILTER(Ref_Geo!$C$2:$C$7, Ref_Geo!$B$2:$B$7 = Form!$B$2))) - Configure Data Validation for Hub (Cell
Form!C2):- Source:
=Staging!$F$2#.
- Source:
Why This Replaces Brittle Legacy Hacks
Legacy Excel required creating dozens of named ranges paired with volatile =INDIRECT(...) formulas that broke whenever region names contained spaces or hyphens. Modern dynamic spill references (#) bind directly to memory arrays, run instantly, and never break when names contain spaces.
Solved Output Table
| Step | Selected Field | Valid Dynamic Options Available in Dropdown |
|---|---|---|
| 1 | Country = India | Karnataka, Maharashtra |
| 2 | State = Karnataka | BLR-Central-Hub, BLR-Airport-Logistics |
| 3 | Country changed to USA | California, Texas (State resets automatically) |
4 Common Gotchas During Online Excel Practice
When practicing spreadsheet problems online or during live technical interview screens, avoid these common traps:
- Sorting One Column in Isolation: Never highlight a single column and click sort. Excel will scramble row alignment. Always convert data to a structured table with
Ctrl + T. Learn the safety protocol in our guide on how to Sort & Filter in Excel Without Mixing Data. - The Obstructed Spill Range (
#SPILL!): Dynamic array formulas likeFILTER,UNIQUE, andSORTneed an empty runway of cells to output results. If a single space or punctuation mark occupies any destination cell, the entire formula halts with#SPILL!. - Quotation Marks Around Date Expressions in SUMIFS: Remember that while criteria strings like
">100"are enclosed in quotes, functions likeTODAY()must be evaluated outside quotes:">="&TODAY(). Writing">=TODAY()"treats the word "TODAY" as literal text, resulting in zero matching records. - Calculated Field vs Helper Column Confusion in Pivot Tables: Ratios and percentages (like Gross Margin % or Conversion Rate) should almost never be calculated inside raw transactional rows and averaged inside a pivot table. Always use a PivotTable Calculated Field to preserve proper weighted arithmetic.
Practice Real-World Excel with Guided Business Scenarios
Master Excel for data analytics step-by-step on Topfolio. All lessons are 100% free to learn with an optional ₹99 verified certificate.
Start Free Excel CourseReady to accelerate your spreadsheet skills? Dive into our comprehensive Free Excel Course and level up your data analytics career with our specialized Excel for Data Analytics Course. Every interactive module, guided project, and downloadable dataset on Topfolio is 100% free to access, with an optional verified certificate of completion available for ₹99.
Frequently Asked Questions
What is the most effective way to practice Excel online?
The most effective method is active problem-solving using real-world business datasets rather than passive video watching. By solving targeted practical exercises in browser-based workbooks, you build muscle memory for formula syntax, error debugging, and analytical logic.
Which Excel formulas are most critical for data analytics job interviews?
Technical spreadsheet assessments prioritize XLOOKUP (or INDEX/MATCH) for relational joins, SUMIFS/COUNTIFS for multi-criteria aggregation, dynamic arrays (FILTER, UNIQUE, SORT) for reporting, and nested logical statements (AND, OR, IFS).
Can I practice advanced Excel exercises without a Microsoft 365 subscription?
Yes. You can practice in Excel for the Web for free via a personal Microsoft account, or use Google Sheets, which supports nearly identical syntax for XLOOKUP, dynamic arrays, and aggregation formulas.
What is the difference between legacy lookups and dynamic array lookups in Excel?
Traditional VLOOKUP relies on static column index numbers that break when columns are inserted. Modern XLOOKUP and dynamic arrays reference actual arrays directly, default to exact matches, and can spill multiple columns and rows automatically.
How do I transition from basic Excel exercises to building client-ready dashboards?
Transition by structuring your workbook into three distinct tiers: raw data tables (locked with Ctrl+T), calculation staging sheets (pivots and dynamic arrays), and a clean executive presentation dashboard with removed grid lines, KPI scorecards, and interactive slicers.
Are the Excel practice exercises on Topfolio free?
Yes, all interactive exercises, business scenarios, and tutorials on Topfolio are 100% free to access. Learners can complete the curriculum at their own pace and optionally purchase a verified certificate for ₹99.

Written by
Founder at Topfolio with 6+ years in data & analytics across JPMC, Ultrahuman, and high-growth startups. Sat on hiring panels, reviewed 500+ resumes, and writes practical SQL & data guides.
Related Articles
Free Excel Practice Sheets & Datasets: 10 Real Workbooks
Download 10 free Excel practice sheets and datasets for data analytics. Practice VLOOKUP, XLOOKUP, pivot tables, SUMIFS, and real business dashboards.
Excel Formulas: The Complete Guide for Data Analysts (2026)
Master essential excel formulas in this complete guide: lookup, math, dynamic arrays, text, financial modeling, and 30+ core functions for analysts.
Pivot Table in Excel: The Step-by-Step Data Summarization Guide
Master how to create a pivot table in excel: step-by-step tutorial on Rows, Columns, Values, Filters, Calculated Fields, and fast data summarization.