Learn Excel easily with guided practice and interactive challenges
Practice formulas, functions, finance, accounting, inventory and data analysis without installing Microsoft Excel. The emulator is embedded into this page as a step-by-step guide so users can learn faster, understand each result and practice with clear challenges.
How to use this learning page
The goal is not to memorize all of Excel. The goal is to practice with small, clear exercises. Each challenge shows what to do, where to write the formula, what result to expect and why that result is correct.
Embedded Excel emulator: guide and challenges
This shortcode activates the emulator in guided learning mode, ideal for teaching Excel from scratch with challenges.
Recommended fast learning path
50 Excel commands, functions and formulas to practice
Copy each example, paste it into the emulator and review the result. The table adapts to phones, tablets and desktop screens.
| # | Category | Command / function | Copy example | Use | Practical explanation | Copy |
|---|---|---|---|---|---|---|
| 1 | Basics | SUM | =SUM(B2:B6) | Adds a range of values. | Useful for adding sales, expenses, inventory or any numeric list. | |
| 2 | Basics | AVERAGE | =AVERAGE(B2:B6) | Calculates the average. | Good for grades, sales, costs or time averages. | |
| 3 | Basics | MIN | =MIN(B2:B6) | Finds the lowest value. | Helps detect the lowest cost, minimum sale or lowest result. | |
| 4 | Basics | MAX | =MAX(B2:B6) | Finds the highest value. | Helps identify the highest sale, highest cost or best result. | |
| 5 | Basics | COUNT | =COUNT(B2:B20) | Counts cells containing numbers. | Counts numeric records without including text. | |
| 6 | Basics | COUNTA | =COUNTA(A2:A20) | Counts non-empty cells. | Useful for counting records, names, products or captured entries. | |
| 7 | Conditions | IF | =IF(B2>=70,"Passed","Review") | Evaluates a condition and returns a result. | Ideal for status lights, approvals, diagnostics and validations. | |
| 8 | Conditions | IFS | =IFS(B2>=90,"Excellent",B2>=70,"Good",B2<70,"Review") | Evaluates several conditions in order. | Classifies results without many nested IF formulas. | |
| 9 | Conditions | SUMIF | =SUMIF(A2:A20,"Sales",B2:B20) | Adds values that meet one condition. | Useful for adding sales, expenses or transactions by category. | |
| 10 | Conditions | SUMIFS | =SUMIFS(C2:C50,A2:A50,"Sales",B2:B50,"January") | Adds values with multiple conditions. | Great for reports by category, month, customer or region. | |
| 11 | Conditions | COUNTIF | =COUNTIF(B2:B50,">=70") | Counts cells that meet a condition. | Counts passed students, low stock items or critical tickets. | |
| 12 | Conditions | COUNTIFS | =COUNTIFS(A2:A50,"Sales",B2:B50,"January") | Counts records with multiple conditions. | Useful for audits, reports and segmented analysis. | |
| 13 | Conditions | AVERAGEIF | =AVERAGEIF(A2:A50,"Sales",B2:B50) | Averages values based on one condition. | Shows average sales, costs or results by group. | |
| 14 | Formatting and numbers | ROUND | =ROUND(B2,2) | Rounds a number to a specific number of decimals. | Very useful for amounts, percentages, taxes and indicators. | |
| 15 | Formatting and numbers | ROUNDUP | =ROUNDUP(B2,0) | Rounds up. | Useful when minimum coverage, packages or full units are required. | |
| 16 | Formatting and numbers | ROUNDDOWN | =ROUNDDOWN(B2,0) | Rounds down. | Good for conservative estimates or whole-unit calculations. | |
| 17 | Formatting and numbers | ABS | =ABS(B2) | Converts a negative number into positive. | Useful for showing differences, losses or variations without a negative sign. | |
| 18 | Dates | TODAY | =TODAY() | Shows the current date. | Useful for dynamic reports, due dates and daily controls. | |
| 19 | Dates | NOW | =NOW() | Shows the current date and time. | Useful for logs, records and timestamps. | |
| 20 | Dates | DATE | =DATE(2026,6,16) | Creates a date using year, month and day. | Avoids format issues when building dates. | |
| 21 | Dates | YEAR | =YEAR(A2) | Extracts the year from a date. | Useful for annual reports and year grouping. | |
| 22 | Dates | MONTH | =MONTH(A2) | Extracts the month from a date. | Useful for classifying sales, expenses or transactions by month. | |
| 23 | Dates | DAY | =DAY(A2) | Extracts the day from a date. | Useful for daily analysis or due dates. | |
| 24 | Text | TEXT | =TEXT(B2,"$#,##0.00") | Converts values to formatted text. | Useful for presenting amounts, dates or percentages clearly. | |
| 25 | Text | CONCAT | =CONCAT(A2," - ",B2) | Joins text from multiple cells. | Creates combined keys, labels or descriptions. | |
| 26 | Text | LEFT | =LEFT(A2,3) | Extracts characters from the beginning. | Useful for prefixes, codes or abbreviations. | |
| 27 | Text | RIGHT | =RIGHT(A2,4) | Extracts characters from the end. | Useful for endings, last digits or codes. | |
| 28 | Text | MID | =MID(A2,2,5) | Extracts text from a specific position. | Useful for splitting parts of keys or identifiers. | |
| 29 | Text | LEN | =LEN(A2) | Counts characters. | Helps validate code, SKU, name or ID lengths. | |
| 30 | Text | TRIM | =TRIM(A2) | Removes extra spaces. | Very useful for cleaning data pasted from other systems. | |
| 31 | Text | UPPER | =UPPER(A2) | Converts text to uppercase. | Normalizes names, codes or records. | |
| 32 | Text | LOWER | =LOWER(A2) | Converts text to lowercase. | Standardizes emails, labels or data. | |
| 33 | Text | FIND | =FIND("@",A2) | Finds the position of text inside another text. | Useful for validating emails or splitting information. | |
| 34 | Text | SUBSTITUTE | =SUBSTITUTE(A2," ","-") | Replaces specific text. | Useful for cleaning data or creating slugs/codes. | |
| 35 | Lookup | VLOOKUP | =VLOOKUP(A2,Products!A:D,4,FALSE) | Looks up a value in the first column of a table. | Useful for bringing prices, descriptions or related data. | |
| 36 | Lookup | XLOOKUP | =XLOOKUP(A2,Products!A:A,Products!D:D,"Not found") | Looks up values flexibly. | Modern alternative for clearer and safer lookups. | |
| 37 | Lookup | INDEX | =INDEX(B2:B20,3) | Returns a value based on its position. | Extracts specific data from a list. | |
| 38 | Lookup | MATCH | =MATCH(E2,A2:A20,0) | Finds the position of a value. | Commonly used with INDEX for advanced lookups. | |
| 39 | Dynamic data | FILTER | =FILTER(A2:C50,B2:B50="Active") | Filters data that meets a condition. | Ideal for clean views of customers, products or transactions. | |
| 40 | Dynamic data | SORT | =SORT(A2:C50,2,-1) | Sorts data by column. | Useful for rankings, top sales or priorities. | |
| 41 | Dynamic data | UNIQUE | =UNIQUE(A2:A50) | Returns unique values. | Useful for customer, category or product lists without duplicates. | |
| 42 | Errors | IFERROR | =IFERROR(B2/C2,"Review data") | Shows a message if there is an error. | Avoids confusing results like #DIV/0! or #N/A. | |
| 43 | Finance | PMT | =PMT(12%/12,24,-50000) | Calculates a loan payment. | Useful for monthly credit, financing or loan payments. | |
| 44 | Finance | FV | =FV(8%/12,36,-1000) | Calculates future value. | Estimates future savings or investment value. | |
| 45 | Finance | PV | =PV(10%/12,24,-2500) | Calculates present value. | Shows the current value of future payments. | |
| 46 | Finance | NPV | =NPV(10%,B2:B6) | Calculates net present value. | Helps evaluate investment projects. | |
| 47 | Finance | IRR | =IRR(B2:B7) | Calculates internal rate of return. | Useful for analyzing investment profitability. | |
| 48 | Finance | Percentage | =B2/B3 | Calculates ratios or percentages. | Example: margin, progress, compliance or share. | |
| 49 | Accounting | Net profit | =B2-B3-B4-B5 | Subtracts costs, expenses and taxes from income. | Explains real profit for a period. | |
| 50 | Accounting | Balance | =SUM(B2:B10)-SUM(C2:C10) | Compares debit vs credit or inflows vs outflows. | Useful for simple balances and reconciliations. | |
| 51 | Inventory | Available stock | =B2-C2+D2 | Calculates final inventory. | Adds entries, subtracts exits and shows availability. |