Let's POWER Automate

From no-code to low-code

Menu
  • Expressions
  • Filters
  • General
  • Application specific solutions
    • Dataverse
    • Excel
    • Forms
    • Outlook
    • Planner
    • Power Apps
    • SharePoint
    • Teams
  • Triggers
  • Ready to use solutions
    • Approval Process Solution
    • Task Delegation App
    • The Ultimate Power Automate expressions cheat sheet
    • Power Automate HTTP requests to SharePoint cheat sheet
    • Power Automate HTTP requests to Graph API cheat sheet
  • ABOUT ME
  • Get help with your flow
  • POWER PLATFORM SERVICES
Menu

Update SharePoint column only if there’s a value using Power Automate

Posted on March 20, 2022March 20, 2022 by Tom

“If the optional SharePoint fields are left blank the update via Power Automate in the second list changes the field to a blank value as opposed to leaving it as the original value.”


The usage of the SharePoint ‘Update item’ action can be a bit confusing. It’ll show all the fields you can update, but that doesn’t mean that all of them must be updated. If you want to keep the original value, you can just keep the field empty (unless it’s a mandatory field).

But it’s different if you use dynamic content as the field value. Once you use dynamic content, or an expression, it won’t keep the original value. Even if the dynamic content is empty, it’ll update the field – to an empty value.

How do you then use dynamic content while keeping the original value if it’s empty?

You’ll need the original value

Since it’ll always do an update, you’ll always need some value, either the original one or the new one. If you use an item based trigger (e.g. item is created/updated), you can get the original value as an output of the trigger. For other triggers get the value using ‘Get item’ action before the update.

Let’s use the second approach in this example, get the values with the ‘Get item’ action.

All the values will be available among the dynamic contents.

Keep the original value if there isn’t a new one

Once you have the original value, you can build an expression for the update. If the new value is empty, keep the original value, otherwise update it to the new one. It’ll be the same if(…) and empty(…) expressions as when updating a date/time column.

if(empty(<newValue>),<oldValue>,<newValue>)

Replacing the <…> placeholders it can look as below:

if(empty(outputs('Compose')),outputs('Get_item')?['body/Title'],outputs('Compose'))
Power Automate SharePoint update only if value

Repeat the same expression with different values for all the fields.

Summary

To update SharePoint columns only if there’s a new value, Power Automate needs three things. It needs the previous value, the if(…) expression, and a check if the new value isn’t empty. Combine them together in a single expression and update the field only if there’s a new value.


🚀 Master Power Automate

Join 2,100+ professionals getting actionable Power Automate tutorials, solutions, cheat sheets & tips every week.

No spam. Unsubscribe anytime.

6 thoughts on “Update SharePoint column only if there’s a value using Power Automate”

  1. Tiago says:
    December 18, 2022 at 2:26 pm

    Very helpfull, as all your articles!
    I have a flow to extract items from sharepoint list (which were not extracted yet) and save in a CSV file in a daily basis. Then, update the “DateExtracted” (with current local time date) to not be extracted again in the next day.
    In the update section I deal with choice columns (multiple and unique selection) and with Yes/No question. The challenge is to keep the same value I got in the “Get Items” section and update only the “DateExtracted”. The problem is that those columns, specially Yes/No, update to the default value of Sharepoint structured when I don’t specify the value. I just want to keep what was recorded (came from “get items”). In the SP list I have lots of columns like that, so I really have to specify those columns with each column from “get items” ?
    Any help to make it better is appreciated.

    Reply
    1. Tom says:
      January 9, 2023 at 3:44 pm

      Hello Tiago,
      if you keep the fields in the ‘Update item’ action empty it shouldn’t update them, just remove the default value from the action.

      Reply
  2. Toby Cannon says:
    February 12, 2023 at 10:47 am

    Hi Tom
    Update Item is the bane of my life. I have a list that captures application forms. Every time the form is processed by a flow, I want one of the last steps to be a simple update of the STATUS column in my list.
    But if I use Update ITEM and ONLY populate the STATUS field, then lots of the other fields get blanked.
    Over the 5 years of running my system, the criteria Flow uses to decide which fields to blank seems to change. At one point it seemed to only affect columns with default values. So then I updated the flows to dynamically read the existing value and write that into the field on Update Item. But then, after a while, other fields started to blank out. In the end I had to just dynamically repopulate EVERY field (about 45 fields!)
    I tried to reduce the labour of this by writing a subflow clalled “update status” but
    – you can only call subdlows if you put your flows in a “solution”
    – having refactored the whole application into working subflows in a “solution” I moved into test and users can’t run flows in solutions unless you give thenm full access to the table! so I had to revert

    I have heard people talk about how this might only affect mandatory and defaulted columns but that doesn’t seem to explain my issues. Indeed, I am trying to write a POC for a better “single field update and I can’t get the issue to replicate!

    I created this test list

    Column (click to edit) Type Required
    Title Single line of text
    textONE Single line of text
    numONE Number
    choiceONE Choice
    CHANGME Single line of text
    Modified Date and Time
    Created Date and Time
    Created By Person or Group
    Modified By Person or Group

    and a Flow to update the column “changeme” and no matter whaty combinations I do of mandation and default values, I can’t make them blank!

    aaaaaaghhhhh

    Becaues one of my flows that does an update and does not specify all fields has just started blanking data!

    Do you have any idea
    1. How to force the error for test
    2. How to avoid it

    T

    Reply
    1. Tom says:
      February 22, 2023 at 7:23 pm

      Hello Toby,
      did you try to update the columns with an HTTP request? https://tomriha.com/update-single-sharepoint-column-in-power-automate-with-http-request/ That’s what I use when there’re only a few columns to update among a ton of mandatory ones.

      Reply
  3. Lisa Lange says:
    February 25, 2025 at 7:14 pm

    This expression is working fabulously for me! Much appreciated! However, is there a way to combine this twice. The project I am working on has a form that not all entries will be filled out, once completed the dates are then logged on a spreadsheet in Share Point. This equation is stopping the clearing of dates already in the log which is perfect.

    The problem I have is two fields on the form that could be logged into the same column in the column on the spread sheet. The entry form will only have one of the two filled out, never both. How can I adjust the equation if(empty(),,) to incorporate both form entries?

    Reply
    1. Tom says:
      March 11, 2025 at 6:55 pm

      Hello Lisa,
      you’ll have to add another if(…) condition inside – first if(..) to check if the first column has a value, if true, update it; if not, do another if(…) inside to check if the second column has a value – if true, update it, if not, do nothing. You can read more about stacking if(…) conditions in this article: https://tomriha.com/replace-multiple-conditions-with-single-power-automate-expression/

      Reply

Leave a Reply Cancel reply

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

🚀 Master Power Automate

Join 2,100+ professionals getting actionable Power Automate tutorials, solutions, cheat sheets & tips every week.

No spam. Unsubscribe anytime.

Still exchanging emails to get things approved?

Get the Approval Process solution and the Task Delegation App to skip the hard part and deploy an automated, fully functional approval solution on a SharePoint list in minutes! And then the next one, and the next one...

Approval Template Preview ✨ Learn more ✨

Turn ideas into flows with ease!

Grab the complete Power Automate Cheat Sheet Bundle—everything you need to master expressions, SharePoint HTTP calls, and Graph API in Power Automate.

Cheat Sheet Bundle Preview ✨ Get the Cheat Sheets

Didn't find what you were looking for?
Need to adjust a solution to fit your needs?
Or would you just like to get an assistance from somebody with thousands of hours of experience with Power Automate?

Power Automate blogs worth visiting

Damien Bird
Dennis (Expiscornovus)
Paul Murana

©2025 Let's POWER Automate | Theme by SuperbThemes