# Balance Sheet PDF to Excel: Indents, Subtotals, Years

- Author: FastBankConvert (https://fastbankconvert.com)
- Published: 2026-10-17
- Category: Other financial documents
- Canonical: https://fastbankconvert.com/blog/balance-sheet-pdf-to-excel

> Turn a balance sheet PDF to Excel: keep line item indents as levels, comparative year columns, subtotals, and amounts shown in thousands.
To turn a balance sheet PDF to Excel, extract each line into a row, then add columns the page only showed visually: a level for the indent, a section such as current assets, and a row type that marks subtotals. Label each amount column with its date and unit, and check that assets still equal liabilities plus equity.

## Balance sheet indents as hierarchy levels

A balance sheet shows its structure with indentation. "Assets" sits at the margin, "Current assets" one step in, "Cash" two. Conversion usually flattens every label to the same position. Rebuild the structure as a Level column, with a number for each indent depth, and a Section column naming the group a line belongs to.

### Why the indent matters

Without the indent, "Other" under current assets and "Other" under non-current liabilities look identical. A lookup or pivot table will merge them. The Level and Section columns are what keep two lines with the same label apart, and what let you total "all current liabilities" without picking rows by hand.

### Recovering the levels

Some extractions keep leading spaces in the label. If yours did, the indent depth can be read from the number of spaces: `=(LEN(A2)-LEN(TRIM(A2)))/2` gives a level when each indent is two spaces. Check a few rows by eye, because the spacing per level varies between documents. Then clean the label with TRIM so lookups work.

If the spaces were stripped, set the level by reading the PDF. It is quicker than it sounds. A small company balance sheet has thirty or forty lines, and the headings that start each group are obvious. Fill the Section column downward from each heading with a formula such as `=IF(E2="heading",A2,C1)`, where E is a row type column marking headings, and C is the section. A heading row starts a new section; every other row inherits the one above.

## Subtotal and total rows on a balance sheet

A balance sheet mixes data lines with sums of those lines: total current assets, total assets, total liabilities, total equity. In Excel, mark each of these with a Row type of "subtotal" or "total" rather than deleting them. Then filter them out for any analysis, and use them to check that the detail lines still add up.

### Recognising subtotal rows

Subtotals are usually labelled "Total ..." and printed with a rule above, sometimes in bold. The rule and the bold are lost in conversion; the label survives. Filter the label column for "Total" and mark those rows. A few balance sheets print a subtotal with no label at all, just a number under a line. Those show up as rows with an amount and an empty label, which should never happen on a data line.

### Keep the printed totals, rebuild your own

Keep the printed subtotal on its row as a reference. Next to it, add a column that rebuilds it from the detail: `=SUMIFS(D:D, C:C, "Current assets", E:E, "line")`, where C is the section and E is the row type. When the two agree, every detail row in that section came across. When they do not, the gap is the size of a missing or misread line.

### Headings with no amount

Rows such as "Assets" or "Current liabilities" carry no amount. Give them a Row type of "heading". They look like empty data to a formula, and an empty cell in a number column can be read as zero, which is harmless for sums but wrong for averages and counts.

## Which balance sheet column is which date?

A balance sheet is a snapshot at one date, and most print a comparative column for the previous year end next to the current one. Copy the date header above each column, such as "31 December 2026", into Excel as the column name, because two bare number columns lose which one is current.

### The current year is not always on the left

Most balance sheets put the current period first, but not all. Some put the comparative first, and some reports add a third column for an opening position after a restatement. Read the header of every amount column, not just the first. A header in a merged cell above the columns is easy to lose in extraction; look for a date row that came across as a separate line above the table.

### Interim balance sheets

A balance sheet in a quarterly or monthly management pack may compare the current month end with the last year end, not with the same month last year. The two columns are then not a like-for-like comparison. Label them with their full dates, so nobody reads the change between them as a year's movement.

### Long format for many dates

If you are collecting balance sheets from several years into one sheet, put each date's amounts in rows rather than columns: Label, Section, Level, Row type, Date, Amount. One row per line per date. A pivot table can then show any set of years side by side, and adding next year's sheet is just appending rows.

## Are the balance sheet amounts in thousands?

Balance sheet amounts in a company's accounts are often shown in thousands or millions, and the scale is printed once, in the heading or above the columns, such as "$000" or "in thousands". Record the scale in a column or a cell header, because once the PDF heading is gone, nothing in the numbers tells you.

### Where to look

Read the line under the statement title, the column headers, and the first note to the accounts if there is one. A balance sheet from accounting software usually prints whole units with cents. A balance sheet from audited accounts often rounds to the nearest thousand. Mixing the two in one workbook without a unit label is a classic way to produce a total that is off by a factor of a thousand.

### Rounding inside thousands

When figures are rounded to the nearest thousand, the printed totals are rounded separately from the lines. Total current assets can therefore differ by 1 from the sum of the rounded lines above it. That is not a conversion error. Allow a tolerance of 1 in the subtotal checks for statements in thousands, and 0 for statements in whole units.

## Does the converted balance sheet still balance?

A converted balance sheet should still balance: total assets equal total liabilities plus total equity, for every date column. Check it with your rebuilt totals, not just the printed ones. If the rebuilt figures balance, every line was read correctly. If they do not, the subtotal checks show which section holds the error.

### Worked example: a small balance sheet as rows

The figures below are an example for an invented company, in whole dollars.

| Label | Level | Section | Row type | 31 Dec 2026 | 31 Dec 2025 |
| --- | --- | --- | --- | --- | --- |
| Cash | 2 | Current assets | line | 42,300 | 35,100 |
| Accounts receivable | 2 | Current assets | line | 61,800 | 54,200 |
| Inventory | 2 | Current assets | line | 28,400 | 31,000 |
| Total current assets | 1 | Current assets | subtotal | 132,500 | 120,300 |
| Equipment, net | 2 | Non-current assets | line | 85,000 | 92,000 |
| Total assets | 0 | Assets | total | 217,500 | 212,300 |
| Accounts payable | 2 | Current liabilities | line | 38,600 | 41,200 |
| Accrued expenses | 2 | Current liabilities | line | 9,900 | 8,700 |
| Long-term debt | 2 | Non-current liabilities | line | 60,000 | 70,000 |
| Total liabilities | 0 | Liabilities | total | 108,500 | 119,900 |
| Share capital | 2 | Equity | line | 20,000 | 20,000 |
| Retained earnings | 2 | Equity | line | 89,000 | 72,400 |
| Total equity | 0 | Equity | total | 109,000 | 92,400 |

### The checks

For the 2026 column, the line rows of the asset sections sum to 42,300 + 61,800 + 28,400 + 85,000 = 217,500. The liability lines sum to 108,500, and the equity lines to 109,000. Then 108,500 + 109,000 = 217,500, so the sheet balances. The same works for 2025: 212,300 on both sides.

In Excel, put three formulas under the table for each date column:

1. Assets from lines: SUMIFS over rows whose section ends in "assets" and whose type is "line".
2. Liabilities plus equity from lines: the same over liability and equity sections.
3. The difference between the two, which must be zero.

### Where errors hide

A balance sheet can balance with a wrong line in it if a single figure moved between two rows on the same side. That happens when a long label wraps and its amount attaches to the next row. Compare the rebuilt subtotal for each section with the printed one as well as checking the overall balance. A section that is off by an amount exactly matched by another section on the same side points to a line in the wrong section.

### Pairing it with the income statement

The retained earnings movement between the two dates usually ties to the profit for the year less any dividends. [Converting a profit and loss PDF with months as columns](/blog/profit-and-loss-pdf-to-excel) covers that statement, and the two together let you test one against the other.

## Side-by-side and scanned balance sheet layouts

Some balance sheets print assets on the left half of the page and liabilities and equity on the right. Extraction reads across the page, so each row mixes an asset line with an unrelated liability line. Split the page into two tables, then stack them. Scanned balance sheets add text recognition, and digits need the checks above even more.

### Splitting a two-sided page

If your tool lets you draw extraction areas, draw one box over the left half and one over the right. If not, extract the whole page and then cut the right-hand columns into a second block, paste it below the first, and fill in Section and Level for both. The balancing check is your proof that nothing was lost in the cut.

### Scanned pages

A balance sheet scanned from paper has no text layer, only an image. Recognition errors on digits, such as 8 read as 3 or a lost comma, are invisible until a total fails. Run every subtotal check, and look closely at any row that breaks one.

### Other places the numbers end up

Balance sheet data often feeds something else. A personal net worth sheet pulls in account balances, such as those from [a 401k statement broken out into funds, contributions and gains](/blog/401k-statement-to-excel). A finance team might load the rows into a database, and [importing converted rows into an Access database](/blog/pdf-to-access-database) shows how the long format above maps onto a table.

### The cash line

The cash figure on a balance sheet is the sum of bank balances on that date, and the bank statements are where you prove it. FastBankConvert is aimed at those statements: PDF to Excel or CSV, with a warning when the opening balance plus transactions does not reach the closing balance. It is not open yet; [join the list on the get-started page](/get-started).
