excelcompare

Compare rows in excel worksheets


Sheet1 (tab-seperated)

Request Barcode Name    Test    Urgency Date    Time    Action
25-943  25042A  GEOFF   MYA-0       01/03/2025  14:47   send
25-1082 76605   JAMES   M2-0        01/03/2025  16:12   send
25-1041 76606   KATIE   SIE-0       01/03/2025  17:14
25-1085 25342A  DANIE   UAD-0       01/03/2025  17:26

Sheet2

Request Barcode Name    Test    Urgency Date    Time    Action
25-1082 76605   JAMES   M2-0        01/03/2025  16:12
24-3721 76683   LLOYD   INF-0       14/03/2025  11:25
25-1085 25342A  DANIE   UAD-0       01/03/2025  17:26
25-943  25042A  GEOFF   MYA-0       01/03/2025  14:47

Ideally the Sheet2 output should be

Request Barcode Name    Test    Urgency Date    Time    Action
25-1082 76605   JAMES   M2-0        01/03/2025  16:12   send
24-3721 76683   LLOYD   INF-0       14/03/2025  11:25
25-1085 25342A  DANIE   UAD-0       01/03/2025  17:26
25-943  25042A  GEOFF   MYA-0       01/03/2025  14:47   send

Our list is constantly being updated and the system will automatically delete a record if it is deemed completed so certain rows from the old sheet will be missing from the new one. Conversely, new job will sometimes be added to jobs from previous date and reopening the jobs as new row. So the new sheet will not be in the same order as the old one and a record can be in a different row

The Request number and the barcode is not unique as customers can order different items to be put on the same order barcode

Is it possible to use excel or any other efficent method to compare sheet easily and ascertain if a record exist on the previous sheet and the action is "send" and somehow indicate it on the new sheet either by conditional formatting or pasting the "send" onto that row in the Action column?

Thank you very much in advance. I have been watching so many videos but most of them cannot solve my problem.

My first thought was to compare them as a string but then i will have to condense the date and expand them again which is not applicable.


Solution

  • Your question is not clear, but
    If

    Enter this formula in the first row of the Action column of New_List, and it will fill down to the other columns:

    =LET(
        x, TAKE(
            FILTER(
                Table_To_Search,
                BYROW(
                    New_List[@[Request]:[Time]] = Table_To_Search[[Request]:[Time]],
                    LAMBDA(arr, AND(arr))
                )
            ),
            ,
            -1
        ),
        IF(ISERR(x), "", IF(x = 0, "", x))
    )
    

    Result with your data

    Original
    enter image description here

    Results
    enter image description here