Skip to main content
cancel
Showing results for 
Search instead for 
Did you mean: 

The Power BI Data Visualization World Championships is back! Get ahead of the game and start preparing now! Learn more

Reply
Anonymous
Not applicable

Dynamic Date Calculation

I need assistance with date calculations for SIP investments in Power BI. Here's my scenario:

  1. I want to calculate InvestmentA based on the earliest date of each month in my dataset.
  2. I also want to calculate InvestmentA based on a custom date of the month (e.g., on the 15th of every month, there is an investment of ₹1000).

The challenge is that the Date column in my table is not continuous and skips non-trading days (weekends and public holidays).

Here's my initial approach for the custom date:
InvestmentA = IF(DAY([Date]) = 1, 1000, 0)

Additionally, I would like to allow the user to select this custom date using a slicer. I got What If table for date 1 to 31. But it doesn't work with columns. My goal is to see the growth of the portfolio over the years and investment date is user selected.

How can I adjust my DAX formula to account for the earliest date of the month and a user-selected custom date, considering the non-continuous nature of my Date column?

 

 

TinyElephant_0-1719816255192.png

DatePrice
Wednesday, February 5, 202012,089.15
Tuesday, February 4, 202011,979.65
Monday, February 3, 202011,707.90
Saturday, February 1, 202011,661.85
Friday, January 31, 202011,962.10
Thursday, January 30, 202012,035.80
Wednesday, January 29, 202012,129.50
Tuesday, January 28, 202012,055.80
Monday, January 27, 202012,119.00
Friday, January 24, 202012,248.25
Thursday, January 23, 202012,180.35
Wednesday, January 22, 202012,106.90
Tuesday, January 21, 202012,169.85
Monday, January 20, 202012,224.55
Friday, January 17, 202012,352.35
Thursday, January 16, 202012,355.50
Wednesday, January 15, 202012,343.30
Tuesday, January 14, 202012,362.30
Monday, January 13, 202012,329.55
Friday, January 10, 202012,256.80
Thursday, January 9, 202012,215.90
Wednesday, January 8, 202012,025.35
Tuesday, January 7, 202012,052.95
Monday, January 6, 202011,993.05
Friday, January 3, 202012,226.65
Thursday, January 2, 202012,282.20
Wednesday, January 1, 202012,182.50
Tuesday, December 31, 201912,168.45
Monday, December 30, 201912,255.85
Friday, December 27, 201912,245.80
Thursday, December 26, 201912,126.55
Tuesday, December 24, 201912,214.55
Monday, December 23, 201912,262.75
Friday, December 20, 201912,271.80
Thursday, December 19, 201912,259.70
Wednesday, December 18, 201912,221.65
Tuesday, December 17, 201912,165.00
Monday, December 16, 201912,053.95
Friday, December 13, 201912,086.70
Thursday, December 12, 201911,971.80
Wednesday, December 11, 201911,910.15
Tuesday, December 10, 201911,856.80
Monday, December 9, 201911,937.50
Friday, December 6, 201911,921.50
Thursday, December 5, 201912,018.40
Wednesday, December 4, 201912,043.20
Tuesday, December 3, 201911,994.20
Monday, December 2, 201912,048.20
Friday, November 29, 201912,056.05
Thursday, November 28, 201912,151.15
Wednesday, November 27, 201912,100.70
Tuesday, November 26, 201912,037.70
Monday, November 25, 201912,073.75
Friday, November 22, 201911,914.40
Thursday, November 21, 201911,968.40
Wednesday, November 20, 201911,999.10
Tuesday, November 19, 201911,940.10
Monday, November 18, 201911,884.50
Friday, November 15, 201911,895.45
Thursday, November 14, 201911,872.10
Wednesday, November 13, 201911,840.45
Monday, November 11, 201911,913.45
Friday, November 8, 201911,908.15
Thursday, November 7, 201912,012.05
Wednesday, November 6, 201911,966.05
Tuesday, November 5, 201911,917.20
Monday, November 4, 201911,941.30
Friday, November 1, 201911,890.60
Thursday, October 31, 201911,877.45
Wednesday, October 30, 201911,844.10
Tuesday, October 29, 201911,786.85
Sunday, October 27, 201911,627.15
Friday, October 25, 201911,583.90
Thursday, October 24, 201911,582.60
Wednesday, October 23, 201911,604.10
Tuesday, October 22, 201911,588.35
Friday, October 18, 201911,661.85
Thursday, October 17, 201911,586.35
Wednesday, October 16, 201911,464.00
Tuesday, October 15, 201911,428.30
Monday, October 14, 201911,341.15
Friday, October 11, 201911,305.05
Thursday, October 10, 201911,234.55
Wednesday, October 9, 201911,313.30
Monday, October 7, 201911,126.40
Friday, October 4, 201911,174.75
Thursday, October 3, 201911,314.00
Tuesday, October 1, 201911,359.90
Monday, September 30, 201911,474.45
Friday, September 27, 201911,512.40
Thursday, September 26, 201911,571.20
Wednesday, September 25, 201911,440.20
Tuesday, September 24, 201911,588.20
Monday, September 23, 201911,600.20
Friday, September 20, 201911,274.20
Thursday, September 19, 201910,704.80
Wednesday, September 18, 201910,840.65
Tuesday, September 17, 201910,817.60
Monday, September 16, 201911,003.50
Friday, September 13, 201911,075.90
Thursday, September 12, 201910,982.80
Wednesday, September 11, 201911,035.70
Monday, September 9, 201911,003.05
Friday, September 6, 201910,946.20
Thursday, September 5, 201910,847.90
Wednesday, September 4, 201910,844.65
Tuesday, September 3, 201910,797.90
Friday, August 30, 201911,023.25
Thursday, August 29, 201910,948.30
Wednesday, August 28, 201911,046.10
Tuesday, August 27, 201911,105.35
Monday, August 26, 201911,057.85
Friday, August 23, 201910,829.35
Thursday, August 22, 201910,741.35
Wednesday, August 21, 201910,918.70
Tuesday, August 20, 201911,017.00
Monday, August 19, 201911,053.90
Friday, August 16, 201911,047.80
Wednesday, August 14, 201911,029.40
Tuesday, August 13, 201910,925.85
Friday, August 9, 201911,109.65
Thursday, August 8, 201911,032.45
Wednesday, August 7, 201910,855.50
Tuesday, August 6, 201910,948.25
Monday, August 5, 201910,862.60
Friday, August 2, 201910,997.35
Thursday, August 1, 201910,980.00
Wednesday, July 31, 201911,118.00
Tuesday, July 30, 201911,085.40
Monday, July 29, 201911,189.20
Friday, July 26, 201911,284.30
Thursday, July 25, 201911,252.15
Wednesday, July 24, 201911,271.30
Tuesday, July 23, 201911,331.05
Monday, July 22, 201911,346.20
Friday, July 19, 201911,419.25
Thursday, July 18, 201911,596.90
Wednesday, July 17, 201911,687.50
Tuesday, July 16, 201911,662.60
Monday, July 15, 201911,588.35
Friday, July 12, 201911,552.50
Thursday, July 11, 201911,582.90
Wednesday, July 10, 201911,498.90
Tuesday, July 9, 201911,555.90
Monday, July 8, 201911,558.60
Friday, July 5, 201911,811.15
Thursday, July 4, 201911,946.75
Wednesday, July 3, 201911,916.75
Tuesday, July 2, 201911,910.30
Monday, July 1, 201911,865.60




2 REPLIES 2
Anonymous
Not applicable

Hi @Anonymous ,

 

To adjust the DAX formula to account for the earliest date of the month and a user-selected custom date, try a formula similar to the following:

EarliestDateInvestment = 
VAR EarliestDate =
    CALCULATE(
        MIN('DateTable'[Date]),
        ALLEXCEPT('DateTable', 'DateTable'[Year], 'DateTable'[Month])
    )
RETURN
    IF(
        MIN('DateTable'[Date]) = EarliestDate,
        1000,
        0
    )

vkongfanfmsft_0-1719914669703.png

Best Regards,
Adamk Kong

 

If this post helps, then please consider Accept it as the solution to help the other members find it more quickly.

 

Anonymous
Not applicable

My table conatins multi-year data. This DAX formula created a calculated column that invests 1000 on every trading day of January of the earliest year in the entire table which for me is the year 2000.

Helpful resources

Announcements
Power BI DataViz World Championships

Power BI Dataviz World Championships

The Power BI Data Visualization World Championships is back! Get ahead of the game and start preparing now!

December 2025 Power BI Update Carousel

Power BI Monthly Update - December 2025

Check out the December 2025 Power BI Holiday Recap!

FabCon Atlanta 2026 carousel

FabCon Atlanta 2026

Join us at FabCon Atlanta, March 16-20, for the ultimate Fabric, Power BI, AI and SQL community-led event. Save $200 with code FABCOMM.

Users online (2,965)