I would bet they are in the other date order, and your locale rejected exactly the ones where the day number is above 12. That produces this pattern almost every time.
Lena
@xlookup_lena
Finance analyst who rebuilds other people's broken workbooks and enjoys it more than she should.
Your dates are text, or there is at least one non-date value hiding in the column. Grouping fails if a single cell in the field is text or blank. Two checks: select the column and compare the status bar count of numbers against the count of values — if the numeric count is lower, some cells are not real dates. Then run =ISNUMBER(A2) down the column and filter for FALSE. Real dates are numbers underneath, which is also why they align right by default while text dates align left. That alignment difference is the two second visual check.
4 MB is large for 8,000 by 15 of plain data, which supports the theory that there is dead formatting or a phantom used range in there. A clean file of that shape is usually well under a megabyte.
8,000 rows is nowhere near needing a database. This is workbook hygiene, not scale.
A trailing sign is a mainframe or ERP style export and no amount of multiplying will parse it. The sequence that works:
- Strip non-breaking and normal spaces:
=SUBSTITUTE(SUBSTITUTE(A2,CHAR(160),"")," ",""). - Fix the separators for your locale, in two substitutions and in the right order, or you will destroy the numbers you are trying to save.
- Handle the trailing sign:
=IF(RIGHT(A2,1)="-",-VALUE(LEFT(A2,LEN(A2)-1)),VALUE(A2)).
Honestly for 12,000 rows I would do all of it in Power Query instead. Its type conversion has a using locale option that handles separators and the trailing minus in one step, and it repeats on every refresh rather than being a one-off you have to remember next month.
It is buried in Change Type using Locale and almost nobody finds it. Worth remembering for anything out of a European or ERP export.
In spreadsheets specifically this is enormous. Keyboard navigation is faster and it takes the arm out of the equation entirely.
It usually is, and it is solved. Just make sure nobody reorders columns, because the append matches on header names rather than position.
Consolidate, and do it in Power Query so the day of work turns into a refresh button. Point it at the workbook, append all the sheets, add the sheet name as a month column, load to a table, pivot from there. Cross-sheet SUMIFS with INDIRECT is possible and genuinely awful: slow, volatile, and it fails silently when someone renames a sheet or inserts a row. You will spend the same day debugging it in six months. The monthly sheets can stay exactly as they are for the humans who like them — the query reads them, it does not replace them.
Audio only, text on the back. If the text is visible you will read it and skip the listening entirely.
Separate skill, and your cards are probably making it worse. If your cards are text on the front, you have learned what words look like, not what they sound like. Put audio on the front of every new card and re-learn the old ones by ear — I did 30 a day for two months and the wall came down noticeably. The other half is that spoken Spanish drops a lot of what the page shows you. Para donde vas is closer to pa'onde vah at speed.
Almost always one of three things, in this order:
- Trailing spaces. Test with
=LEN(A2)on both sides. If one says 6 and the other says 7, that is your answer, andTRIMfixes it. - Number stored as text on one side. Check
=ISNUMBER(A2)on both. Text 100234 and numeric 100234 are not equal as far as VLOOKUP is concerned even though they look identical on screen. - Non-breaking spaces from a web or PDF paste, character 160, which TRIM does not remove. Run
=SUBSTITUTE(A2,CHAR(160),"")first, then TRIM.
The fact that copying the value across fixes it points hard at the second or third one, and a third of rows failing suggests part of your data arrived from a different source than the rest.
The column counting fragility is the real argument. INDEX MATCH solved it decades ago and XLOOKUP just made it readable.
Classic. Fix it at import rather than with a helper column if you can — Power Query lets you set the column type once and it holds on every refresh.