How to move an item automatically from one list to another based on column value change in Sharepoint

Mohanad Essam 21 Reputation points

I need to know how to move and item automatically from one list to another based on status change in Sharepoint cloud.

For example:
I have 2 Lists, The first is called (Tasks) and the second is called (Archived)
I have a column called status in my list. What I want is in case the status is updated to "Complete" in (Tasks) list, this item will be automatically moved to (Archived) list.


A group of Microsoft Products and technologies used for sharing and managing content, knowledge, and applications.
9,828 questions
{count} votes

Accepted answer
  1. Jinwei Li-MSFT 4,721 Reputation points Microsoft Vendor

    Hi @Mohanad Essam ,

    I suggest you use Power Automate to complete.

    1.Create two lists with the exact same column names.

    2.Please go to Power Automate > Create > Automated cloud flow

    3.Add a flow like the follow screenshot.


    If the answer is helpful, please click "Accept Answer" and kindly upvote it. If you have extra questions about this answer, please click "Comment".

    Note: Please follow the steps in our documentation to enable e-mail notifications if you want to receive the related email notification for this thread.

    1 person found this answer helpful.

2 additional answers

Sort by: Most helpful
  1. Lucie Liskova 0 Reputation points

    Hi All,

    Would it be possible to use the above but add in an interval to say - if the status changed to 'yes' move to another SharePoint list after 1 day.

    Thank you.


    0 comments No comments

  2. Cary 0 Reputation points

    Yikes! Sorry. I just noticed this is an old thread...

    I too tried something similar to Jinwei Li-MSFT's post. For my application I had a "drop off" list and a "records" list. I have only one person with authority to say if an entry is an "actual record or not" by simply marking a [x] or not. All items in the "drop off" list had the record column as blank [ ]. If any item had the record column marked [x] then it went to the "records" list. If any item in the "Records" list was unmarked [ ] then it went to the "Drop off" list. I used the "ID" field to keep track of the records and this allowed me to "Delete" that record in the previous list...

    However! I could only get the item to move once not to mention it looped and I had 4000 records created in one of the lists over a weekend. Some of the problems I faced were each time the item moves back and forth to a different list the ID# increments. My plan was to keep the ID column the same. It just meant the person in charge of lists allowed someone to make changes and once the change is complete marked it back to the Read Only list so having the record increment is a problem. (I should be able to just add a "-1" to the ID somehow in JSON I just haven't had time to learn that yet.) The problem I don't know is how to get the PowerAutomate task to have unlimited "moves" and not just once. (I tested an entry from the "Drop off" list and made the Record entry [x]. This successfully created the entry in "Records" list (with an incremented ID#) and the delete removed the original record from "Drop Off" list BUT!!! I could not uncheck the Record column [ ] to get it to move back. However if there was something that was created in the "Records list" I CAN uncheck the Record Column to get that entry to move to "Drop off" list.

    It's not my highest priority task at the moment but if I make progress on it I'll try posting it here. I'm thinking about making my own ID for each entry and not using the built in SharePoint ID column other than for deleting items moving between lists. I don't know how to get items to move more than once though or what that problem is. (I want to be able to just [x] from one list to get it to move and then just [ ] from that list to get it to move back and like all day long if I want to. HA!

    0 comments No comments