14

So here is my problem.

I have a site collection. In this site I have a list (ListA) that has lots of columns and lots of attachments and lots of items and over the threshold. I would like to create a copy of this list and place it on the same site collection. So basically duplicate ListA with a ListB. However the export and import functions do not give me the ability I need. I can export but the import function does not allow me to create a new list out of it. If I understand correctly it will overwrite the already existing listA. Is there a way to duplicate a list on the same site collection?

As I write this I thought maybe I could write a workflow that could copy data from ListA to an empty ListB but I don't know how easy that will be.

The list is over its threshold and affecting some outlook client calendar views. I would prefer to just archive and start a new list but that would bring downtime and the archived list would have to still be in use for a while. Many people use it and my client is afraid of all the users getting confused with 2 active lists. So my client wants no down time. So my thinking is to just duplicate ListA to ListB and delete old data from ListA and delete new data from ListB, thereby avoiding downtime.

Any ideas? Some one suggested I export to excel and recopy but this list has tons of attachments so it would not work.

EDIT Saving the list as a template with data will not work because SharePoint limits the content data to 10MB. This list is FAR beyond that. I could save the empty template true ... but I would still be stuck in finding an easy way (outside onetime custom code) to copy data across ...

3
  • Can I just copy one task? That doesn't seem to be an odd request. Commented Aug 9, 2017 at 13:48
  • Can I just copy one task? That doesn't seem to be an odd request. Commented Aug 9, 2017 at 13:48
  • on prem or online environment ? Commented Aug 9, 2017 at 14:48

8 Answers 8

9

You can create a Site Template to create the copy.

  1. Go to the list settings of the list (ListA)
  2. Click save list template on the right list of links
  3. Save the template as something
  4. Click save list content if you want the same content in the new list
  5. Go to the All Site Content page and create a new list based on the saved template (ListB)
    1. Site Contents
    2. Add App
    3. Search for template you created

This will create an exact copy. If you move to a new subsite some of the connections like lookup columns may be messed up, but within the same site should be fine.

5
  • This will not work as the list is over the 10MB limit on content saves. The goal is to not only duplicate the list but the data inside.
    – fraygos
    Commented Apr 30, 2014 at 17:50
  • Well I think your only option is to make a list template then script the data migration. Shouldn't be too difficult and doing a test list will not affect anything. Commented Apr 30, 2014 at 17:53
  • yea, that seems to be my only course ... frustrating though ... I wish the import command had a way to generate a new list and not overwrite a list with same info on it ... I assume when you mean Site Template, you mean List Template.
    – fraygos
    Commented Apr 30, 2014 at 17:54
  • Ahh, yeah that is what I meant. Commented Apr 30, 2014 at 17:57
  • 1
    just a note, in my o365 tenant i have a doc lib with over 5000 docs. it won't let me save the library as a template, even without contents,
    – RussGove
    Commented Sep 6, 2017 at 0:44
5

You can even increase the maximum size of list templates up to 500 MB (I don't know if it is large enough for you) either via stsadm:

stsadm -o setproperty -propertyname max-template-document-size -propertyvalue 524288000

or via PowerShell as well:

$webservice = [Microsoft.SharePoint.Administration.SPWebService]::ContentService
$webservice.MaxTemplateDocumentSize = 524288000 #500 MB
$webservice.Update()

See this post for details.

I suggest you to revert the value back to the original one after saving your list as template.

1

You can export list using export command/central admin. Then rename old list(including url). Import the export taken already.

1
  • 1
    Does anyone know if this central admin technique works to import the exported list into a different site?
    – Mister_Tom
    Commented Feb 19, 2015 at 18:51
1

Another option is to use a third-party migration tool such as Sharegate. Most tools out there allow you to migrate libraries and lists content along with their structure.

If you are well-versed in PowerShell it is indeed a very viable option. However, if you prefer not going down the PowerShell route using a migration tool is a great alternative.

In addition to a 1:1 list copy, you can also add metadata, granularly move the content and even change content types, etc. It can also help you overcome the 5000 list item view threshold. These tools are especially useful if you have to do this type of migration regularly.

Most companies offer free trials so you can evaluate their software. You can start with Sharegate by visiting http://en.share-gate.com/download

[DISCLAIMER : I work for Sharegate]

1
  • [DISCLOSURE: I do NOT work for Sharegate] I am just a licensed user and demoed several 3P tools and Sharegate was by far the most reasonably priced (< $1,500 USD/yr) and robust tool for our needs. It allows copying everything from a single file to entire site collections within or between site collections. SG Desktop (the migration app) also has reporting tools that are very useful. I'm a solo SP Admin and don't have dev time for PowerShell. SG is a wonderful PowerShell GUI that has saved countless hours and frustration for me and opened up new possibilities as well.
    – mojoriesen
    Commented May 13, 2020 at 12:11
1

If you have a list with attachments that you need moved over you can also save in access, then re-upload to the site using a new name. This will bring the attachments over as well. This may not be the best way for a large list as you may timeout on the download or upload part of the process but I have done this with lists up to 1000 items with attachments.

0
0

You can do that, first do IMPORT to EXCEL on your Source list. and go to all site site content and click on create, use import spread sheet and upload the excel sheet. you exact data will get exported to the splist.

0

Save As Template also doesn't work in SP Online - where we migrated to a few years ago. I used to manually replicate the list with metadata columns and content types, then export/import (import is really a copy/paste now), but list attachments have always been a problem. There are Flows you can use to automate saving list attachments to a Doc Library (http://www.sharepointing.co.uk/2019/08/20/copy-sharepoint-list-attachments-to-document-library/) which makes them easier to browse for end users.

You may want to consider something I've done moving forward. For any new lists that require file attachments I create a list and a doc library. In the list I add a hyperlink field and simply copy the link to the associated file/folder in that list record's link field. This allows easy "attachments" for multiple files (i.e. simply upload multiple files to a folder and link to that folder) and easy download for multiple files. You can come up with your own link description taxonomy so that it makes sense to your users.

Also - see my comment on Jimmy's post. Sharegate is a wonderful 3P tool that I've used for a few years now to help move and migrate content with ease. It handles lists and attachments without blinking. It's < 10% the cost of other 3P tools and does everything my one-man-SharePoint-shop needs. It even allows scheduling migrations/copies which I now do all on the weekend to avoid check-outs and activity while I move things around. If a small investment is an option for you I highly recommend it.

0

You can also create a list from another list( as long as you only need the metadata/column names and types. This solution will not copy the values existing in the list) :

  1. New: list
  2. Create a list: From existing list
  3. Select a teams or site: Choose a list from Site. (this site). Here you select the list you wanted to copy.
  4. Give new name. Create

I am populating the list with a powerapp, so i didnt need the values to be copied

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