Prevent Microsoft Word from wrapping tables across columns and pages

When writing technical documents, it is often required for tables to not wrap across columns and page breaks, so that all data from a given table are displayed in one place. In LaTeX, there is a setting to prevent tables from wrapping unless they are simply too long to do otherwise. Is there any similar such setting for Word 2010?

I know I can manually insert column and page breaks, but it becomes a hassle to reformat the entire document if I add in two lines of text which bumps two lines of a table over to the next column. I also found an option under Table Properties for "don't break row over pages", but this doesn't seem to do what I want. Is there any other setting that can do this?

Examples:

Bad:

unhappy column

Good:

happy column


Solution 1:

Based on this guide from the MS Word MVP FAQ site. Quotes are from the article; screenshots were taken for this post.

In Word 2007, on the Home tab, locate the Paragraph group. Click the dialog launcher (small arrow) in the bottom right corner to open the Paragraph dialog. Select the Line and Page Breaks tab.

Select the expand arrow in the corner of the paragraph section

  • “Keep lines together,” as the name implies, keeps all the lines of a paragraph together. That is, it keeps a single paragraph from being split across two pages.

  • “Keep with next” keeps a given paragraph with the following one. That is, it prevents the two paragraphs from being separated across two pages (the individual paragraphs, however, can be split internally unless “Keep lines together” is also applied). This property is assigned by default to Word's built-in Heading 1–Heading 4 styles to ensure that headings stay with following text.

Select both of these properties to force the table to wrap columns or go to the next page if it exceeds the available space.

format paragraph

Now the table behaves as desired:

table fixed

Solution 2:

For future reference I'd like to add a similar solution.

Advantage: The style is not "hard", i.e. done via toolbar, but fixed with the tables style and thus applies to all tables with the same style (possibly in all documents, if you save it in the Normal.dotm).

Disadvantages: Way down the rabbit hole. Longer and more complicated set-up.

Primer: When using "hard" formatting it is usually fixed to the selected paragraph, nothing more. Tables have their own format category, which to my knowledge is not affected by "hard" formatting.

Personal note: I try to avoid "hard" formatting at all costs. I'm using a German version of Word2010, thus I probably use wrong names for some GUI elements.

Step 1a - create a new style: Open the format tab via the small arrow in the lower right corner of the "Styles" section in the home ribbon. Alternatively press Ctrl+Alt+Shift+S. Create a new style and select its type to be table.

Step 1b - edit existing style: Set cursor within an existing table to activate the "table tools" ribbon. Right-click the tables style in this ribbon and select "edit".

Step 2 - make whole table "sticky": Make sure you have "apply to whole table" selected. Click the "style" button on the lower left and select "paragraph". Activate "keep with next" and confirm.

Step 3 - add exception for last row: This time make sure you have "apply to last row" selected. Click the "style" button on the lower left and select "paragraph". You will see "keep with next" marked with a grayed out tick. This is b/c its inherited from "apply to whole table". Undo this, i.e. click until there is no tick.

You're done.

I have made a screenshot illustrating this:

screenshot