Google Sheets: Everyone has their own way
The past, present and future of spreadsheets
- 1975 - Altair 8800: first personal computer, no screen or keyboard, just switches and LEDs.
- 1979 - VisiCalc: the first digital spreadsheet. 5 columns × 20 rows. Arithmetic + cell references with automatic updates. Written in 6502 Assembly, so painfully difficult to use.
- 1983 - Lotus 1-2-3: charts, macros, 2048 × 256 cells, databases.
- 1985 (Mac) / 1987 (Windows) - Excel: full GUI, 16,384 × 256, complex functions, advanced charts, VBA. Beat Lotus thanks to the interface and Office integration.
- 2006 - Google Sheets: started out limited compared to Excel. Today handles up to 10 million cells (≤18,278 columns). Works well for mid-size businesses, but slows down with huge datasets.
Comparison
| Feature | VisiCalc | Lotus 1-2-3 | Excel |
|---|---|---|---|
| Release | 1979 | 1983 | 1985/1987 |
| Rows | 20 | 2048 | 16384 |
| Columns | 5 | 256 | 256 |
| Charts | No | Yes | Yes (advanced) |
| Macros | No | Yes | Yes (VBA) |
| Full GUI | No | Partial | Yes |
Sheets vs. Excel: the limits
Excel desktop goes up to 1,048,576 × 16,384. As a local app it processes faster than Sheets in the cloud.
Practical tricks
Note: set Sheets to English to avoid conflicts with scripts.
Trick 1: Corporate email vs. public ISP
=ARRAYFORMULA(IF(LEN(A2:A)>0;
IF(REGEXMATCH(A2:A; "(gmail\.com|yahoo\.com|outlook\.com|hotmail\.com)$");
"Personal"; "Corporate");
""))
Use case: clean up your database, filter prospects.
Trick 2: Auto reports with FILTER + UNIQUE + SORT
=SORT(UNIQUE(FILTER(A2:A; B2:B > 1000)); 1; TRUE)
Lists unique customers with spend over €1,000, sorted.
Trick 3: Multi-criteria dynamic lookups with INDEX + MATCH + ARRAYFORMULA
=ARRAYFORMULA(INDEX(A2:A1000;
MATCH(1; (B2:B1000="Product1") * (C2:C1000="CategoryA"); 0)))
Multiplying criteria gives AND logic.
Trick 4: Pivot tables without pivot tables (OFFSET + COUNTA)
=ARRAYFORMULA(OFFSET(A1; 0; 0; COUNTA(A:A); 3))
The range adapts itself to how much data you have.
Trick 5: Top N with ARRAY_CONSTRAIN + UNIQUE + SORT
=ARRAY_CONSTRAIN(SORT(UNIQUE(A2:A1000); 1; TRUE); 10; 1)
Top 10 unique entries, sorted.
Conclusion
You don't need to be a guru to get real work out of it. Sheets has what you need for day-to-day tasks.
CTAs
- Related courses: Google Sheets, Apps Script
- Services: Data architecture, Tech advisory, Process management
- "Book my appointment"



