How to print each row/cell on a separate page in Excel?
When working with data tables in Excel—such as salary statements, attendance lists, or invoice records—you may encounter situations where you need to print each record separately. This often arises when individual reports must be provided to staff or clients, and keeping each entry on its own printed page ensures clarity and privacy. However, Excel prints data continuously by default, and configuring it to print one row or cell per page can seem challenging. This article introduces four practical methods to achieve this, including tips, usage scenarios, and guidance to help you pick the most effective solution for your needs.
- Print each row/cell on a separate page with adjusting row height
- Print each row/cell on a separate page with VBA
- Print each row/cell on a separate page with Kutools for Excel (with title row)
- Print each row on a separate page with Kutools for Excel (without title row)
Print each row/cell on a separate page with adjusting row height
One straightforward approach while using Excel’s built-in settings is to manually adjust the row height so that each row fits exactly onto a single printed page. Excel always prints as much content as fits within its set margins and paper size; if a row is tall enough, only that row will appear on a page. This method is simple, requiring no formulas or add-ins, and is especially suitable when you only have a limited number of records to print individually.
This approach works best for short lists or smaller data sets, as it requires manual intervention. Be mindful that for larger tables or repeated tasks, the process can become tedious and time-consuming to configure for every printing session.
1. Click the Page Layout > Margins > Custom Margins.
2. In the opening Page Setup dialog box, enter 2.5 into both the Top and Bottom margin boxes, then click the OK button.
Note: The exact margin values may need adjustment depending on your paper size (such as A4, Letter, etc.). If you find your row is being split over two pages or leaves excess blank space, tweak the margin numbers accordingly and check the Print Preview after adjustments for best fit.
3. Select all rows that you want to print separately. Then, right-click the selected row header and choose Row Height from the context menu.
4. In the Row Height dialog box, type 250 into the Row height field, then click OK.
Tip: If your printout still includes more than one row per page or too much blank space, adjust the row height value gradually and retest using Print Preview. The “250” value is a reference; the best setting may differ based on column contents, font size, and print scaling.
5. Click File (or the Office button), then Print. In the Print Preview pane, you’ll see that each selected row now covers a separate page. Review page breaks before printing to ensure correct results, then click Print to start producing the individual pages.
This technique is quick for small jobs, does not require any technical skills, and doesn’t alter your worksheet data. However, for large tables or if you need this setup frequently, consider automated solutions below to save time and avoid repetitive adjustments.

Unlock Excel Magic with Kutools AI
- Smart Execution: Perform cell operations, analyze data, and create charts—all driven by simple commands.
- Custom Formulas: Generate tailored formulas to streamline your workflows.
- VBA Coding: Write and implement VBA code effortlessly.
- Formula Interpretation: Understand complex formulas with ease.
- Text Translation: Break language barriers within your spreadsheets.
Print each row/cell on a separate page with VBA
If you regularly need to print every row on its own page—especially for longer tables—using a VBA macro can automate the process. A macro can loop through the worksheet, sending each row (or cell) to the printer individually, precisely controlling the print job without requiring manual changes to each row’s formatting or page settings. This approach is suitable for users familiar with macros and VBA, and it prevents accidental changes to the data layout or formatting of the source worksheet.
1. Press Alt + F11 together to open the Microsoft Visual Basic for Applications editor window.
2. Click Insert > Module. In the new module that appears, paste the following VBA code into the window.
VBA: Print each row/cell on a separate page in Excel
Sub PrintOneLine()
Dim Rng As Range
Dim WorkRng As Range
Dim xWs As Worksheet
On Error Resume Next
xTitleId = "KutoolsforExcel"
Set WorkRng = Application.Selection
Set WorkRng = Application.InputBox("Range", xTitleId, WorkRng.Address, Type:=8)
Set xWs = WorkRng.Parent
For Each Rng In WorkRng
xWs.PageSetup.PrintArea = Rng.EntireRow.Address
xWs.PrintPreview
Next
End Sub
3. Press the F5 key or click the Run button (the green triangle at the top of the VBA window) to execute the macro. A dialog box will appear for you to select the range you wish to print. Select the rows or cells, then click OK to proceed.
Note: If your dataset is large, this process may open multiple Print Preview windows—one for each row. Be prepared to confirm printing for each individual preview; this gives you the chance to ensure formatting is correct before continuing. If the number of previews is overwhelming, consider printing directly instead of previewing, by adjusting the code if you have VBA experience.
4. Each row will be shown in its own Print Preview window. You will need to manually click the Print button within each preview to send the row to the printer. Repeat the process until all rows are printed.
For advanced users, you can further customize the macro—such as setting titles or adjusting orientation—to better fit specific reporting requirements.
Print each row/cell on a separate page with Kutools for Excel
If you have Kutools for Excel installed, its Split to Columns feature provides an efficient and user-friendly way to print each row or cell on its own page, while also allowing you to include title rows on each printed sheet. This is especially useful for employee records, order lists, or any reporting scenario where you want repeated headings to appear at the top of each printed page for clarity.
1. Go to the Kutools Plus tab, then click Split to Columns.
2. In the Split to Columns dialog box, configure the following settings to define how your pages will be divided:
(1) In the Titles range field, select the row(s) containing your headers that should appear at the top of every printed page;
(2) In the Data range field, select the specific rows to print separately;
(3) Input 1 in the Rows per printed page box to ensure one row per page;
(4) In the Number of Segments box, type 1;
(5) Click the Ok button to run the tool.
Upon confirmation, Kutools will create a new worksheet, automatically splitting each row to its own printable page and inserting the specified title row at the top of each. This streamlines the process and reduces the risk of formatting issues or print overlaps.
Practical tip: To visually inspect page breaks and verify the output before printing, switch the view to Page Break Preview by clicking View > Page Break Preview.
This method is flexible and ideal for regular tasks, as you can process many rows in bulk and ensure consistent, professional printouts with headers. After splitting, simply go to File (or Office button) > Print to output your pages as desired.
The Split to Columns tool preserves your original worksheet, so you can reuse the source table or tweak settings for different output formats without risk.
Print each row on a separate page with Kutools for Excel
In addition to splitting data with repeated headers, Kutools for Excel offers the Insert Page Break Every Row function, making it easy to automatically insert page breaks after each row in a selection. This method is efficient and user-friendly for both simple and moderately complex data tables, especially when title rows are not needed on each printed page.
1. Highlight the range to be printed (it may include multiple columns and rows), then click Kutools Plus > Printing > Insert Page Break Every Row.
2. In the dialog that appears, enter 1 in the Interval of box. This will insert a page break after every row, ensuring each row prints on its own page. Click Ok to apply the setting.
Once confirmed, a notification box will indicate how many page breaks have been inserted. Simply click OK to close the message.
3. Navigate to File (or Office button) > Print. Each row should now be displayed—and printed—on a separate page as expected.
Tip: This solution keeps the original formatting intact and does not require copying data to a new worksheet. If you wish to remove the page breaks after printing, go to Page Layout > Breaks > Remove Page Breaks.
Demo: print each row/cell on a separate page in Excel
Best Office Productivity Tools
Supercharge Your Excel Skills with Kutools for Excel, and Experience Efficiency Like Never Before. Kutools for Excel Offers Over 300 Advanced Features to Boost Productivity and Save Time. Click Here to Get The Feature You Need The Most...
Office Tab Brings Tabbed interface to Office, and Make Your Work Much Easier
- Enable tabbed editing and reading in Word, Excel, PowerPoint, Publisher, Access, Visio and Project.
- Open and create multiple documents in new tabs of the same window, rather than in new windows.
- Increases your productivity by 50%, and reduces hundreds of mouse clicks for you every day!
All Kutools add-ins. One installer
Kutools for Office suite bundles add-ins for Excel, Word, Outlook & PowerPoint plus Office Tab Pro, which is ideal for teams working across Office apps.





- All-in-one suite — Excel, Word, Outlook & PowerPoint add-ins + Office Tab Pro
- One installer, one license — set up in minutes (MSI-ready)
- Works better together — streamlined productivity across Office apps
- 30-day full-featured trial — no registration, no credit card
- Best value — save vs buying individual add-in