Forum Discussion

RADical6142's avatar
RADical6142
Copper Contributor
Jul 07, 2022

Highlight or count duplicates in a single Sharepoint List column

I have a Yes/No column titled "isDuplicate" which I would like to populate based on duplicates located in another column titled SerialNumber. I tried to do this with a calculated column and if statement, but doesn't seem to work. Is there any way to count or highlight duplicates in a single column in Sharepoint List?

  • RADical6142   Here you go...

     

    Create a variable and connect to your list:

    Now, for each item above - check the list to see if that serial number exists anywhere else in that list.  If it does, increment a variable.  When it's done, update the IsDuplicate field to yes or no.

    In the apply to each

    • set the count back to 0 
    • Get the list items for searching

    Now add another Apply to each and a condition. The condition: if the Serial Number (in the first Get Items) equals the Serial Number (in the second Get Items), increment the variable.  It will always find a match once.  

    After that apply to each, add another condition that checks to see if the count is greater than 1, set IsDuplicate to Yes, if not, set IsDuplicate to No. 

     

     

    That's it, your list should be updated.  Here's a big picture view, beginning to end.

     

    Some thoughts...  

    • I set this to run as recurrence since it will probably take a long time to run depending on how many items are in your list.  You might want to filter that first Get Items to only check items that have been updated since the last time it ran. 
    • If this is a one-time cleanup, maybe set the Serial Number field in SharePoint to Enforce Unique Values

    Here is the json for the Title column.

    {
    "elmType": "div",
    "debugMode": true,
    "txtContent": "@currentField",
    "style": {
    "background-color": "=if([$IsDuplicate] == 'Yes', '#FFFFDD', '')"
    }
    }

     

    • RADical6142's avatar
      RADical6142
      Copper Contributor

      PamDeGraffenreid Thank you for your reply. It doesn't seem to address the problem I'm facing though. The union expression in the link eliminates duplicates. I'm trying to highlight and update duplicate rows.

       

      So basically...highlight the duplicates in the serial number column and/or update the IsDuplicate column for the rows where there are duplicate serial numbers. 

       

      This is the current view:

       

      What I'm trying to accomplish:

       

       

      I don't think there is a way to accomplish this with calculated or lookup columns. It looks like the alternatives are JSON formatting, Power Apps or a Flow. I'm not verse on the former two, so I'm thinking a Flow would be easier. Is there an expression that you know of that will do the opposite of "union" where it only return duplicates? I tried Intersection, but that doesn't work either. 

       

      Thanks! 

      • RADical6142   Here you go...

         

        Create a variable and connect to your list:

        Now, for each item above - check the list to see if that serial number exists anywhere else in that list.  If it does, increment a variable.  When it's done, update the IsDuplicate field to yes or no.

        In the apply to each

        • set the count back to 0 
        • Get the list items for searching

        Now add another Apply to each and a condition. The condition: if the Serial Number (in the first Get Items) equals the Serial Number (in the second Get Items), increment the variable.  It will always find a match once.  

        After that apply to each, add another condition that checks to see if the count is greater than 1, set IsDuplicate to Yes, if not, set IsDuplicate to No. 

         

         

        That's it, your list should be updated.  Here's a big picture view, beginning to end.

         

        Some thoughts...  

        • I set this to run as recurrence since it will probably take a long time to run depending on how many items are in your list.  You might want to filter that first Get Items to only check items that have been updated since the last time it ran. 
        • If this is a one-time cleanup, maybe set the Serial Number field in SharePoint to Enforce Unique Values

        Here is the json for the Title column.

        {
        "elmType": "div",
        "debugMode": true,
        "txtContent": "@currentField",
        "style": {
        "background-color": "=if([$IsDuplicate] == 'Yes', '#FFFFDD', '')"
        }
        }

         

Resources