cancel
Showing results for 
Search instead for 
Did you mean: 
Reply
joshcomputer1
Helper V
Helper V

Count between start and end date

I have a table as follows.  I want to get a count of names between start and end date.  the result is a table like figure 2.  I have a datetable related to this table. When I do the measure, it is just giving me a count based on start date.  So, if I have two that started on 1.3 then it shows a 2. Which is not what I want. 

 

The Measure I tried is this:

TEST NEW Headcount = calculate(
                                           count(TEST[Name]),
                                           Filter (
                                           TEST,
                                          TEST[Start_Date] <= calculate(max(datetable1[date]) ) &&
                                          TEST[End_Date] >= calculate(min(DateTable1[Date]))))

 

 

Name              Start_Date                                       End_Date

AbbyTuesday, January 1, 2019Thursday, January 3, 2019
BillWednesday, January 2, 2019Wednesday, January 2, 2019
ChrisThursday, January 3, 2019Saturday, January 5, 2019
DaveThursday, January 3, 2019Friday, January 4, 2019
ElliotFriday, January 4, 2019Wednesday, January 9, 2019
FrankSaturday, January 5, 2019Monday, January 7, 2019

 

DESIRED RESULT SET

DateEmployee Count
1/1/20191
1/2/20192
1/3/20193
1/4/20193
1/5/20193
1/6/20192
1/7/20192
1/8/20191
1/9/20191
1 ACCEPTED SOLUTION
MFelix
Super User
Super User

Hi @joshcomputer1 ,

 

Your measure is correct however your datetable needs to be disconnected from your Test Table.

 

Since you have a relationship on the Start Date your data is filtered by the start date only so give you 6  as a result and not the expect outcome.

 

Check the image below and PBIX file attach:

Start_end_date.gif

 

Regards,

MFelix


Regards

Miguel Félix


Did I answer your question? Mark my post as a solution!

Proud to be a Super User!

Check out my blog: Power BI em Português



View solution in original post

5 REPLIES 5
MFelix
Super User
Super User

Hi @joshcomputer1 ,

 

Your measure is correct however your datetable needs to be disconnected from your Test Table.

 

Since you have a relationship on the Start Date your data is filtered by the start date only so give you 6  as a result and not the expect outcome.

 

Check the image below and PBIX file attach:

Start_end_date.gif

 

Regards,

MFelix


Regards

Miguel Félix


Did I answer your question? Mark my post as a solution!

Proud to be a Super User!

Check out my blog: Power BI em Português



Hi @MFelix ,

 

I know this is a few years old but super helpful. Thank you.

 

Using your example I was able to make it for my use case. However, if I put the data in a bar chart with calendar as X and the measure as Y it and a slicer with the calendar it works great. However, since it's a discconnected table I am not able to click on the chart to filter a table. Is that possible? 

 

for example:

 

I'm tracking staff on trips with a start and end date. Each trip has a unique ID. I want to be able to see on a chart the number of trips that are occuring at any given month and when i click that month it will filter my table to show me who is traveling. Your example shows the correct data on the chart but it doesn't filter back the table. Wondering how one would tackle that with it being disconnected. 

 

Thanks for taking the time to answer a question from 2019..

Hi @RoofTopNomad ,

 

In this case just try to add the metric on the table visualization filters and set the filter to is not blank. This should give you the expected result that is filtering the records based on the metric selection.


Regards

Miguel Félix


Did I answer your question? Mark my post as a solution!

Proud to be a Super User!

Check out my blog: Power BI em Português



Of course! What an obvious solution! Thanks

Anonymous
Not applicable

here is my suggestion to tackle this :

 

first Make a new date table.

 

DateTable = Calendar(Minx(table1,Table1[Date]),Now()) 

Now add a new calculated column:

 

DateSlicer = CALCULATE(
    COUNTROWS(contractid),
    FILTER(Table1,
        DateTable[Date] >= [startdate] &&
        DateTable[Date] <= [Enddate])

 

Hope this  will help.

Helpful resources

Announcements
PBI Sept Update Carousel

Power BI September 2023 Update

Take a look at the September 2023 Power BI update to learn more.

Learn Live

Learn Live: Event Series

Join Microsoft Reactor and learn from developers.

Dashboard in a day with date

Exclusive opportunity for Women!

Join us for a free, hands-on Microsoft workshop led by women trainers for women where you will learn how to build a Dashboard in a Day!

MPPC 2023 PBI Carousel

Power Platform Conference-Power BI and Fabric Sessions

Join us Oct 1 - 6 in Las Vegas for the Microsoft Power Platform Conference.

Top Solution Authors