I have a list that was created from a Custom List template. Most users have been interacting with it through a calendar view that was created. Now, some users would like to connect this list to their Outlook calendars.

I know that this functionality is only available for lists based on the Calendar template.

Without recreating this list (and the hundreds of items of content), can you change an exisiting list's base template?


Created a new list based on the Calendar template and used this PowerShell script to copy items over. If you don't have direct access to the server, this could also be done remotely using PowerShell and the Lists.asmx web service (more information).

#Copies items from one list to another

$spAssignment = Start-SPAssignment 
$oldList = (Get-SPWeb -Identity http://yoursite -AssignmentCollection      $spAssignment).Lists["OldList"]
$newList = (Get-SPWeb -Identity http://yoursite -AssignmentCollection $spAssignment).Lists["NewList"]

foreach ($oldItem in $oldList.GetItems()) 
        $newItem = $newList.Items.Add()
        $newItem["Column 1"] = $oldItem["Column 1"]
        $newItem["Column 2"] = $oldItem["Column 2"]
        $newItem["Column 3"] = $oldItem["Column 3"]
        $newItem["Column 4"] = $oldItem["Column 4"]
        $newItem["Column 5"] = $oldItem["Column 5"]
        $newItem["Column 6"] = $oldItem["Column 6"]

Stop-SPAssignment $spAssignment

2 Answers 2


AFAIK, no. We faced this problem a while ago, and unfortunately, haven't found any solution. Now we're shipping version with Calendar lists only to new customers, while customers with previous versions of product are basically... hm... out of lack :))

In your situation I'd recommend you to create a console application, and move the items programmatically between the old and new lists.


I think it is possibly for you to create another list and without editing template just copy content of old list to new one. Cpying is not problem, just short powrShell script, you can copy all field values, even author. We did this few times while migration content from one portal to another. If you have thousand records you can use batch insert operations to do this fastly, but if you have onle few hundreds of record you can do this just in loop. By the way this wll not help you, just for information, you can edit presaved list template as xml. Generally list telplate is xml, you can download wsp to yor computer, unpack it by special cap archiver and edit xml definition.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

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