Hi Giang Pham,
Welcome to Microspoft Q&A Forum! Have a good day and I hope you're doing well!
I completely understand that having two header rows with different formatting is important for how you design your tables, and it’s frustrating when Word keeps reverting back to a single header row. To look into this properly, I reproduced the behavior in a test environment following the same steps you described, and I can confirm I see the same result:
- When I select the first two rows and use Table Layout > Repeat Header Rows, both rows are marked as header rows and they do repeat on subsequent pages.
- However, as soon as I apply any Table Style, Word automatically treats only the first row as the “Header Row” in terms of styling, and the second row becomes a normal body row.
This happens because the current Table Style mechanism in Word only allows a single Header Row definition inside a style (there is only one dedicated formatting “slot” for header rows). Each time you apply or change a Table Style, Word forces the header formatting back to the first row only.
I. About creating a Table Style with two header rows: Unfortunately, at the moment Word still does not support creating a Table Style that has two separate header rows with separate formatting definitions and saving that as a standard style.
Even if you mark the first two rows as header rows via Repeat Header Rows, whenever you apply or change a Table Style, the “Header Row” formatting will only be applied to row 1.
II. Keeping two real header rows and formatting them differently: There is a workable workaround:
1. Choose the Table Style first
- Place the cursor anywhere inside the table.
- Go to Table Design and pick the Table Style you like (colors, borders, etc.).
2. Mark both top rows as header rows again
- Select the first two rows.
- Go to Table Layout > Repeat Header Rows.
- Now both rows are real header rows: they will both repeat on every page.
- At this stage, both rows will share the same base header formatting from the chosen Table Style.
3. Manually adjust formatting so the two header rows look different
To give them different background colors: Select the header row you want to change > go to Table Design > Shading > pick a color.

To change font, size, bold/italic, etc.: Select the row > go to the Home tab > adjust Font, Size, Bold/Italic, Alignment… as needed.
With this approach:
- Functionally, both rows are still header rows and will repeat at the top of each page.
- Visually, you can make the two rows look different (background, font, size, etc.) by manual formatting.
One small note: since step 3 relies on manual formatting, if you later switch to a different Table Style, you may need to re‑tune the formatting of the second header row.
I hope the information and the testing I’ve done can partially help you in running your workflow more smoothly. If you have any concern or question, or if I misunderstood anything or something is unclear, feel free to share.
If the answer is helpful, please click "Accept Answer" and kindly upvote it. If you have extra questions about this answer, please click "Comment".
Note: Please follow the steps in our documentation to enable e-mail notifications if you want to receive the related email notification for this thread.