If you are working with tables in a document, at some point you may find it helpful to transpose the contents of the table, so that rows become columns and columns become rows.
There is no way to do this in Word. There is, however, a way to transpose rows and columns in Excel. So, the typical method of accomplishing this task is to use both Word and Excel, using these general steps:
WordTips is your source for cost-effective Microsoft Word training. (Microsoft Word is the most popular word processing software in the world.) This tip (9078) applies to Microsoft Word 2007, 2010, 2013, 2016, 2019, Word in Microsoft 365, and 2021. You can find a version of this tip for the older menu interface of Word here: Transposing Table Contents.
Learning Made Easy! Quickly teach yourself how to format, publish, and share your content using Word 2013. With Step by Step, you set the pace, building and practicing the skills you need, just when you need them! Check out Microsoft Word 2013 Step by Step today!
Word's new Insert Column and Insert Row tools can be a timesaver when adding table rows and columns. They can be a ...
Discover MoreNeed to add more than a single row to an existing table? Word provides an assortment of ways that you can accomplish the ...
Discover MoreWhen creating tables, Word provides a handy tool that you can use. Once the table is in place, you can use the table ...
Discover MoreFREE SERVICE: Get tips like this every week in WordTips, a free productivity newsletter. Enter your address and click "Subscribe."
2022-01-24 09:52:41
Andrew
Funny, I just had the need for this functionality just the other week, so I "hocked up" this macro to create a "transposed" table in a separate document. This is highly not robust, and could have some error checking, but that was taking me down a rabbit hole I didn't have time for.
Andy.
Sub TableTranspose()
' Rotates columns to rows and vice versa
Dim OriginalTable As Table
Dim TransposedTable As Table
Dim NewDoc As Document
Dim a As Long, b As Long
Set OriginalTable = Selection.Tables(1)
Set NewDoc = Documents.Add
Set TransposedTable = NewDoc.Tables.Add(NewDoc.Content, OriginalTable.Columns.Count, OriginalTable.Rows.Count)
For a = 1 To OriginalTable.Rows.Count
For b = 1 To OriginalTable.Columns.Count
TransposedTable.Cell(b, a).Range.Text = OriginalTable.Cell(a, b).Range.Text
Next b
Next a
TransposedTable.Select
End Sub
Got a version of Word that uses the ribbon interface (Word 2007 or later)? This site is for you! If you use an earlier version of Word, visit our WordTips site focusing on the menu interface.
Visit the WordTips channel on YouTube
FREE SERVICE: Get tips like this every week in WordTips, a free productivity newsletter. Enter your address and click "Subscribe."
Copyright © 2022 Sharon Parq Associates, Inc.
Comments