I need to create a list which will end up with a large number of columns (about 30) but small number of rows (about 5 at the moment). Basically, the visualization will suffer at the end.

Is there any way to replace rows with columns? Or what is the best practise to do what I want?


There is an out of the box solution:

You can go to the List-> Go to List Tab in Ribbon -> Select Modify View. On modify View Page, you can Style. By default it is "default" which you can change to Boxed, or Boxed no labels.

Using above OTB styles, you can have your columns appear horizontally.

If that does not serve the purpose, you can always customize it as suggested by other users.


I think you should use an XsltListView webpart in your AllItems.aspx (default view) of your list and modify XSLT of webpart to make desired layout. http://msdn.microsoft.com/en-us/library/ff630941.aspx


Out of the box, SharePoint offers a view called Preview pane. It is basically a display form, but where you can easily switch between items.

There are other styles, like boxed or newsletter, that could also work for you.

If you really want to switch rows and columns, you'll need to do some coding. You can for example:

  • modify the Web Part XSLT, as suggested by Alex Boev
  • Use a client side script that will do the switch
  • use a client side script that will pull the data and create the table from scratch

Due to columns limits in SharePoint best practice is to avoid having so many columns. In your case a solution could be to break the list in multiple lists with lookup fields between them.

  • Smells to me like it's a small configuration list, if it's only got a couple of rows in it. Good to point out the limits but I don't think performance will be hit that much (unless it's read many times, in which case it'll be cached anyway).
    – James Love
    Feb 10 '12 at 17:41

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.