There could be many business scenarios where you will be required to move/copy items from one list to another, below I have highlighted some of the scenarios:

  • List threshold (5000 items) reached
  • Archived list items based on the dates – For example move all data six months older.
  • The user should not be able to see the item after they have completed/submitted a request/item.  For example, expense form once approved user have no access.

In this blog, I will focus on how to automatically (through a recurrence task) copying the data (and deleting the items so effectively moving) from one list to another for archiving purposes based on a condition.

I am assuming you know how to create lists in SharePoint.  We will need two lists with exactly the same fields i) Target and obviously, the Destination list.

There are two ways to create a Flow:

SharePoint Modern List Flow

SharePoint Online - Flow

Microsoft Flow App/Portal – Create a blank flow

Microsoft Flow - Automate Business Proceses

The first step, Add a ‘Recurrence‘ action.  Recurrence allows us to schedule task based on the frequency and interval, for example, repeat every 10 minutes.

Recurrence Flow Action

Get the items you would like to move/copy and define conditions.  The Get Items action accepts OData conditions.  You want to learn more about OData filters here. I have defined a condition based on the expiry date greater than or equal to and column (called Moved) ‘No’.

Create an action for ‘Add an Apply to each’.  I have created a selected item in the destination list and delete or update (if you want to) items on the target list.

Create Items and map the fields/column from Target to Destination list

Update Items on the target list if you don’t want to delete the item (Optional)

Delete the items from the Target list based on the item.

If you have other business scenarios you think this could be useful, please drop a comment.

Enjoying SharePointing…!

Please follow and like us:


hise · October 16, 2017 at 07:54

Nice solution. I want to do something similar. However, my list items have attachments and i want to also move the attachments to the other list. Do you have any recommendations for that?

    SharePointer · October 18, 2017 at 21:35

    I think you should be able to use ‘Get attachment’ action and move the file with the item.

Rahul · September 17, 2018 at 08:04

Thank you ! This was exactly what I was looking for.

Ramesh Mukka · December 5, 2020 at 14:22

How do I move complex data types like Choice, Lookup or People column?

Colm · April 1, 2021 at 11:04

This looks great and almost what I am looking for. Can I ask how is your expiry date column formatted? Do you manually enter the expiry date with each item. In my list I have an “archive due date” column which is calculated using [created date] + 6 months, however the filter query in the flow fails because this is a calculated field. I cannot run the flow per item because of the 30-day limit and without a filter it runs on all items.
The field ‘Archive_x0020_Due_x0020_Date’ of type ‘Calculated’ cannot be used in the query filter expression.
Any suggestions as to how to get around that?

Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.