The TRANSPOSE function is fully automatic and can transpose cells vertical to horizontal, and vice versa. The only requirement is that there be a one to one relationship between source and target cells.
In the example shown, we are transposing a table that is 2 columns by 7 rows (14 cells), to a table that is 7 columns by 2 rows (14 cells).
Note that this function creates a dynamic link between the source and target. Any change in to data in the source table will be reflected in the target table.
One-off conversion with Paste Special
If you simply need to do a one-time conversion, and don't need dynamic links, you can use Paste Special. Select the source data, copy, then use Paste Special > Transpose.