Forum Discussion

PeraZo's avatar
PeraZo
Helper I
5 years ago
Solved

How to create new column that get value from previous row (previous date)

Hi,

 

Can someone kindly help me adding new column ("Sales Previous Day ") that gets value from previous row (or previpus day, week, year)?

 

The table data is below.

I want to get sales number of the previous days, weeks, years for each "Store ID".

 

IDStore IDDateSalesSales Previous Day (or week or month)
112021/06/18369 
222021/06/18800 
332021/06/18700 
412021/06/19400369
522021/06/19850800
632021/06/19750700
712021/06/20500400

 

I don't want to do this using DAX like sameperiod previous month, dateadd but show in new column as I want to calculate each row.

 

I tried to use custom columns and Date.Add function but coundn't reach the solution. 

 

Thank you.

  • PeraZo 

    You can try this as a new column:

    Previous Day Sales = 
    
    CALCULATE(
        SUM(Table2[Sales]),
        LASTDATE(
        FILTER(
            ALL(Table2[Date] ),
            Table2[Date] < EARLIER([Date]) 
            )
        ), 
        ALLEXCEPT(Table2,Table2[Store ID])
    )
    

2 Replies

  • Hi,

     

    Thank you!!

    It worked.

     

    I customized your code like below for previous week, month etc. and it's working. 

     

    Previous Week Sales = 
    
    CALCULATE(
        SUM(Table2[Sales]),
        LASTDATE(
        FILTER(
            ALL(Table2[Date] ),
            Table2[Date] < EARLIER([Date]) -6
            )
        ), 
        ALLEXCEPT(Table2,Table2[Store ID])
    )

     

    Thank you.

    Cheers.

  • PeraZo 

    You can try this as a new column:

    Previous Day Sales = 
    
    CALCULATE(
        SUM(Table2[Sales]),
        LASTDATE(
        FILTER(
            ALL(Table2[Date] ),
            Table2[Date] < EARLIER([Date]) 
            )
        ), 
        ALLEXCEPT(Table2,Table2[Store ID])
    )