Excel to LaTeX Converter
Export worksheet data as LaTeX tabular markup for reports, academic writing, and technical documents without uploading your spreadsheet.
Drop your files here or click to upload
Supports .xlsx, .xls, .xlsm, .xlsb · up to 50MB · or paste a file from your clipboard
How to Export Excel Tables
- Upload an Excel workbook - Your file is opened locally in the browser.
- Choose the worksheet and format - Export Markdown, LaTeX, YAML, or TSV from the same data.
- Copy or download the result - Use the output in docs, reports, repositories, or data pipelines.
What's next?
Keep going with one of these tools.
What the .tex Output Contains
One tabular environment, ready to paste into a document that already has a preamble. A three-column sheet exports as:
\begin{tabular}{l l l}
\hline
Region & Units & Revenue \\
\hline
North & 120 & 4820.5 \\
South & 98 & 3910 \\
\hline
\end{tabular}No packages are required to compile that: tabular and \hline are plain LaTeX. Nothing is emitted around it, so you decide whether the table floats, where the caption goes, and what it is labelled.
Escaping Is the Part That Matters
Ten characters can break a LaTeX build or silently change the output, and spreadsheets are full of them. Each one is converted on the way out:
| In your cell | In the .tex file | What it would otherwise do |
|---|---|---|
& | \& | Start a new column mid-cell |
% | \% | Comment out the rest of the line |
$ | \$ | Open math mode |
#, _, {, } | Prefixed with a backslash | Macro arguments, subscripts, grouping |
~, ^ | \textasciitilde{}, \textasciicircum{} | Non-breaking space, superscript |
\ | \textbackslash{} | Begin an unknown command |
| A line break in a cell | A single space | End the row early |
Rows, Headers and Values
- First row as headers is on by default; the header row sits between two
\hlinerules. Turn it off and every row is treated as data, with generic Column N headers. - Ragged rows are padded to the widest row, so the ampersand count matches the column specification on every line - a mismatch is the classic "Extra alignment tab" error.
- Duplicate or empty headers are made unique and named Column N respectively.
- Dates export as the serial number Excel stores, not as a formatted date. Use a
=TEXT(A2,"yyyy-mm-dd")helper column for a readable date in the paper. - Numbers keep the precision the workbook shows rather than a raw double, so 1.1 stays 1.1.
- Formulas export as their last calculated result; styles, colours and charts are not represented at all.
Fitting the Table into Your Document
The exporter deliberately stops at the tabular environment, which leaves four decisions to you. Each is a one-line edit on the pasted output:
- Caption and position - wrap the block in
\begin{table}[htbp]...\end{table}with\caption{}and\label{}, then reference it with\ref. - Column alignment - change the
lletters in the column specification torfor numeric columns andcfor centred headings. - Rules - swap the three
\hlinerules for\toprule,\midruleand\bottomruleif you load the booktabs package. - Width - a wide table fits with
\resizebox, apcolumn for the long text column, or by switching the environment totabularx. A table longer than a page needslongtable, which the exporter never writes on its own.
When to Use a Different Tool
To bring a table out of a paper and back into a spreadsheet, use LaTeX to Excel, which reads tabular, tabularx, tabular* and longtable environments. The same converter here also writes Markdown tables and YAML records from the identical data. If your table is long enough to break across pages, export it here and then switch the environment to longtable by hand, since the exporter always writes plain tabular.
Frequently Asked Questions
Backslashes become \textbackslash{} first, then &, %, $, #, _, { and } are each prefixed with a backslash, ~ becomes \textasciitilde{} and ^ becomes \textasciicircum{}. A line break inside a cell becomes a single space. That means a cell reading '50% & rising' compiles as written rather than starting a new column or a comment.
It will compile, but as literal text: the dollar signs and the caret are escaped, so you get $x^2$ printed rather than typeset math. There is no way for the exporter to tell a currency symbol from a math delimiter, and escaping is the choice that never breaks the build. Strip the escapes by hand on the few cells that really are math.
No. The output is a bare tabular environment with \hline above the header, below the header, and at the end. Wrap it in \begin{table}[htbp] yourself to add a caption, a label and positioning, or swap the rules for \toprule, \midrule and \bottomrule if you load booktabs.
They are not. A merged range exports as its value in the first cell and empty cells for the rest of the span; no \multicolumn or \multirow is generated. Add those by hand, or flatten the merges in the spreadsheet before exporting.
The column specification is written as one l per column, because the exporter does not inspect column types. Change the letters in \begin{tabular}{...} to r for numbers or c for centred headings - it is a single line to edit and nothing else depends on it.