Spreadsheet Viewer & Editor for CSV/XLSX
Open CSV, TSV and Excel or OpenDocument workbooks (.xlsx, .xlsm, .xls, .ods) as a fast spreadsheet grid inside VS Code.
Scroll through hundreds of thousands of rows, edit cells, rows and columns with VS Code's own Undo/Redo, and sort, filter and search.
Saving a CSV keeps its delimiter, quoting, line endings and encoding, and only the cells you edited change.
No ads, no account and no network calls. The CSV editor is free.

Why this one
- Your file stays your file. Every row you did not touch is written back byte for byte. That includes the quotes, the
; or tab delimiter, CRLF or LF line endings, a UTF-8 BOM, UTF-16 or Windows-1252, a missing final newline and multi-line cells. Edited rows keep the quoting of their other cells.
- Big files stay fast. The grid only draws the rows and columns on screen. A 150,000-row CSV opens in about half a second, sorts and filters in well under a second, and saves in about 0.1 s.
- Sorting never reorders your file. Sort and filter change the view only. Row numbers always show the row's real line in the file.
- No ads and no pop-ups. Pro features carry a small PRO badge. Using one shows what it does, with a Get Pro link. No timer pops anything up.
- Works offline and in the browser. It is pure JavaScript and WebAssembly, so it works in Remote, WSL, Codespaces and vscode.dev. VSCodium, Cursor and Windsurf work too.
Free features
- Open
.csv, .tsv, .tab and .psv files (right-click → Open in Spreadsheet Editor, or the table icon in the editor title bar). .xlsx, .xlsm, .xls and .ods open in the grid by default. Open as Text switches back.
- Auto-detects the delimiter (comma, semicolon, tab, pipe), the encoding and the line endings. They show as chips in the toolbar; click one to change it for the next save.
- Edit:
- Cells: type to replace a cell, or press Enter, F2 or double-click to edit it. Alt/Shift+Enter adds a new line inside the cell.
- Rows and columns: insert or delete them from the toolbar, the right-click menu, or by selecting row numbers or column letters.
- Other edits: paste a block from Excel or Google Sheets (it adds rows at the end if needed), fill a selection with one pasted value, clear cells, and find and replace.
- Undo and Redo are VS Code's own (Ctrl/Cmd+Z, Ctrl/Cmd+Shift+Z), so the tab shows unsaved changes and Revert File and hot exit work.
- Header row: detected automatically and switchable. Header names become the column titles and stay out of sort and filter.
- Sort by any column (numbers sort as numbers, empty cells last). Shift+click a second column to break ties.
- Filter each column:
text (contains), =x, !=x, >5, <=10, empty or !empty. Search checks every cell. Filter by this value is in the right-click menu.
- Copy any selection as tab-separated text, ready to paste into Excel or Sheets.
- Selection summary: count, sum and average of the selected cells. Select a column for its count, distinct values, sum, average, min and max.
- Workbooks:
- a tab for each sheet (hidden sheets in italics);
- formatted values (
12,000, 19.4%);
- formula cells marked, and the formula (
=SUM(B4:E4)) shown in the formula bar.
- Export CSV: save any sheet as a plain
.csv file.



Pro (licence key, checked offline)
$29 once (lifetime) or $19 a year, per developer. Everything above stays free. Pro adds:
- Edit and save workbooks (
.xlsx, .xlsm, .xls, .ods).
- Cells you did not edit keep their value, number format and formula.
- Column widths, sheet names and order, defined names and hidden sheets are kept.
- The previous file is kept as
<name>.bak.
- Typing
=A1*2 writes a formula; Excel recalculates it when it opens the file.
- Compare two spreadsheets. You see the added, removed and changed rows, and each changed cell shows its old and new value. Rows are matched by row order or by a key column such as an ID, so a re-sorted export still compares correctly. Two 150,000-row files compare in about a second.
- Query with SQL. Every sheet becomes a table in an in-memory SQLite database (
data for a CSV, or the sheet name). Numbers are stored as numbers, so SUM, AVG, GROUP BY and JOIN across sheets work. You can copy the results or export them as CSV.


Buy at https://puzaricloud.in/apps/spreadsheet-editor/, then run Spreadsheet: Enter Pro License Key.
Keyboard
| Key |
Action |
| Arrows, Page Up/Down, Home/End, Ctrl/Cmd+arrows |
Move |
| Shift + any of the above, Shift+click, drag |
Extend the selection |
| Type, Enter, F2, double-click |
Edit (Enter commits and moves down, Tab moves right, Esc cancels) |
| Ctrl/Cmd+Enter |
Insert a row below |
| Delete / Backspace |
Clear cells (or delete the selected rows or columns) |
| Ctrl/Cmd+C / V / A / F |
Copy / paste / select all / search |
| Ctrl/Cmd+Z, Ctrl/Cmd+Shift+Z |
Undo / redo |
Settings
spreadsheetEditor.warnSizeMB (200): ask before opening larger files. There is no paid size limit.
spreadsheetEditor.sqlRowLimit (10000): rows kept from one SQL result. Export CSV always gets every row.
spreadsheetEditor.backupWorkbookOnSave (true): keep <name>.bak when saving a workbook.
Notes
- Files are loaded into memory. Plan for about three times the file size in RAM.
- When a workbook is saved, values, formulas, number formats, column widths and merged cells are kept. Merged cells are dropped from a sheet where you inserted or deleted rows or columns.
- Cell colours, fonts, charts and images are not written back, so a
.bak copy is kept.
- Formulas that point at moved cells are not adjusted when you insert or delete rows or columns. The grid tells you when this happens.
- Formulas are not recalculated in VS Code. Excel and LibreOffice recalculate them when they open the file.
Support: support@puzaricloud.in · Privacy
| |