Three messy sheets, cleaned.

Same engine that runs in the workbench. Names and numbers are anonymised; the shapes of the mess are exactly what we get every day.

1 · A contact list copied out of three different phones

Sales follow-up list · 2,140 rows · exported from iPhone, Android and a paper notebook someone retyped

2,140 rows in 1,986 clean rows 154 duplicates merged 37 rows flagged for a human

Before

name,手机号,城市
张伟,+8613800001111,河南 濮阳
张伟 ,138-0000-1111 , 濮阳市
李娜,1380000111,郑州
王芳,13800002222,郑州
赵磊,12345,安阳

After

name,phone,city,flag
张伟,13800001111,濮阳,
李娜,,郑州,phone has 10 digits
王芳,13800002222,郑州,
赵磊,12345,安阳,phone has 5 digits

Two “张伟” became one row instead of two calls to the same person. The two broken numbers were kept and labelled, not silently dropped.

2 · Order data with money written five ways

Small shop bookkeeping · 860 rows · amounts and dates all over the place

860 rows in 860 rows out amount → real numbers 212 issues listed

Before

order,date,amount
A-01,2024/3/7,¥1,280
A-02,2024年3月8日,1280元
A-03,2024.13.45,abc
A-04,45000,¥98.5
A-05,,1 200

After

order,date,amount
A-01,2024-03-07,1280
A-02,2024-03-08,1280
A-03,2024.13.45,abc
A-04,2023-03-15,98.5
A-05,,1200

Columns became sortable and summable in Excel — the whole point. The impossible date and the “abc” amount are flagged by row number so someone can call the customer.

3 · A 2,000-row survey with invisible junk

Questionnaire export · 2,004 rows · zero-width characters, full-width digits, 46 empty rows at the end

2,004 rows in 1,958 rows out 46 empty rows removed 0 manual fixes for format

Before

id,score,email
1,8,user1@mail.com
2,7,user2@mail.com​
3,,user3@mail.com
4,9,USER4@MAIL.COM

After

id,score,email
1,8,user1@mail.com
2,7,user2@mail.com
3,,user3@mail.com
4,9,user4@mail.com

Full-width score digits and the invisible character after the second email are the classic reasons a “clean” file still fails to import. One pass fixed both.

Clean my own sheet → Send us the file