Problem with NETWORKDAY.INTL Function

masud8956

Board Regular
Joined
Oct 22, 2016
Messages
163
Office Version
  1. 2016
  2. 2011
  3. 2007
Platform
  1. Windows
I have used the formula below several times in my worksheet. I am using Excel 2016 so not facing any problem. But some other users are getting errors who are using Excel 2007/2010.
Code:
=IF($K$7="","",IF(NETWORKDAYS.INTL($K$7,$E$8,7,$T$35:$V$67)<1,"-",NETWORKDAYS.INTL($K$7,$E$8,7,$T$35:$V$67)))

When I delete the ".INTL" portion of the formula in Excel 2010, I get the result 1 day more probably because of the default holidays.

Is there any way around to be able to get the same result as NETWORKDAYS.INTL compatible for Excel versions as old as 2007? Weekly holidays are meant to be FRI and SAT for my case.

Thanks
 
Last edited:

Excel Facts

Using Function Arguments with nested formulas
If writing INDEX in Func. Arguments, type MATCH(. Use the mouse to click inside MATCH in the formula bar. Dialog switches to MATCH.

jasonb75

Well-known Member
Joined
Dec 30, 2008
Messages
12,926
Office Version
  1. 365
Platform
  1. Windows
Array confirmed with Ctrl Shift Enter

=IF($K$7="","",IF(NETWORKDAYS($K$7+1,$E$8+1,$T$35:$V$67+1)<1,"-",NETWORKDAYS($K$7+1,$E$8+1,$T$35:$V$67+1)))

If you have blanks in the holidays range then it will need a slight change.
 

masud8956

Board Regular
Joined
Oct 22, 2016
Messages
163
Office Version
  1. 2016
  2. 2011
  3. 2007
Platform
  1. Windows
Yes.

There will be blanks in holiday range.
 

jasonb75

Well-known Member
Joined
Dec 30, 2008
Messages
12,926
Office Version
  1. 365
Platform
  1. Windows
Can you modify the layout slightly?

I have just noticed that your holidays are spread over 2 columns, so the change will not work. I'm going to try a couple of other methods, but I think that it would need to be a single column to work.

edit:-

To clarify, it would need to be a single column with no intermediate blanks. i.e. dates at the top, blanks at the bottom.
 
Last edited:

masud8956

Board Regular
Joined
Oct 22, 2016
Messages
163
Office Version
  1. 2016
  2. 2011
  3. 2007
Platform
  1. Windows

ADVERTISEMENT

Absolutely!

I can get them in a single column. You guessed right, Dates at the top and blanks at the bottom.
 

jasonb75

Well-known Member
Joined
Dec 30, 2008
Messages
12,926
Office Version
  1. 365
Platform
  1. Windows
Ignore that, I had overlooked the most simple fix

Array confirmed as before.

=IF($K$7="","",IF(NETWORKDAYS($K$7+1,$E$8+1,IF($T$35:$V$67<>"",$T$35:$V$67+1,))<1,"-",NETWORKDAYS($K$7+1,$E$8+1,IF($T$35:$V$67<>"",$T$35:$V$67+1,))))

Or a shorter version, to be used with a custom cell format of #0;-;-;@

=IF($K$7="","",NETWORKDAYS($K$7+1,$E$8+1,IF($T$35:$V$67<>"",$T$35:$V$67+1,)))
 

masud8956

Board Regular
Joined
Oct 22, 2016
Messages
163
Office Version
  1. 2016
  2. 2011
  3. 2007
Platform
  1. Windows

ADVERTISEMENT

Worked beautifully!

Thanks a lot!! :)
 

masud8956

Board Regular
Joined
Oct 22, 2016
Messages
163
Office Version
  1. 2016
  2. 2011
  3. 2007
Platform
  1. Windows
Ignore that, I had overlooked the most simple fix

Array confirmed as before.

=IF($K$7="","",IF(NETWORKDAYS($K$7+1,$E$8+1,IF($T$35:$V$67<>"",$T$35:$V$67+1,))<1,"-",NETWORKDAYS($K$7+1,$E$8+1,IF($T$35:$V$67<>"",$T$35:$V$67+1,))))

Or a shorter version, to be used with a custom cell format of #0;-;-;@

=IF($K$7="","",NETWORKDAYS($K$7+1,$E$8+1,IF($T$35:$V$67<>"",$T$35:$V$67+1,)))

Hi again,

Need a little more advice. I have one more formula. It is a WORKDAY function, not NETWORKDAYS. Formula is like:

=WORKDAY.INTL($E$8,$F$19/$B$23,7,$D$16:$D$48)

$E$8 is the start date. $F$19/$B$23 is number of days. Weekly holidays are FRI and SAT. $D$16:$D$48 is the list of public holidays other than weekends.

Since it is not compatible with Excel 2007, as you have guided before, I have tried to fix it like:

=WORKDAY($E$8+1,$F$19/$B$23+1,IF($D$16:$D$48<>"",$D$16:$D$48+1,))

Problem is, the result I am getting is 1/2 days off when I compare with the original (WORKDAY.INTL) formula. Where did I do the mistake?

Thanks!
 

jasonb75

Well-known Member
Joined
Dec 30, 2008
Messages
12,926
Office Version
  1. 365
Platform
  1. Windows
Perhaps

=WORKDAY($E$8+1,$F$19/($B$23+1),IF($D$16:$D$48<>"",$D$16:$D$48+1,))

Or

=WORKDAY($E$8+1,($F$19+1)/($B$23+1),IF($D$16:$D$48<>"",$D$16:$D$48+1,))

Without knowing what is expected, or what F19 and B23 refer to, this is just a guess.
 

masud8956

Board Regular
Joined
Oct 22, 2016
Messages
163
Office Version
  1. 2016
  2. 2011
  3. 2007
Platform
  1. Windows
My bad! I did not explain well.

F19 refers to total no of tasks left to do. It is a number like 453.0
B23 refers to the existing rate of task/day. Say it is 3.18

Both of these cells are product of other calculations and they are dynamic.

I am trying to predict the completion date by that formula.
 

Watch MrExcel Video

Forum statistics

Threads
1,132,895
Messages
5,655,844
Members
418,246
Latest member
VerticalChris

We've detected that you are using an adblocker.

We have a great community of people providing Excel help here, but the hosting costs are enormous. You can help keep this site running by allowing ads on MrExcel.com.
Allow Ads at MrExcel

Which adblocker are you using?

Disable AdBlock

Follow these easy steps to disable AdBlock

1)Click on the icon in the browser’s toolbar.
2)Click on the icon in the browser’s toolbar.
2)Click on the "Pause on this site" option.
Go back

Disable AdBlock Plus

Follow these easy steps to disable AdBlock Plus

1)Click on the icon in the browser’s toolbar.
2)Click on the toggle to disable it for "mrexcel.com".
Go back

Disable uBlock Origin

Follow these easy steps to disable uBlock Origin

1)Click on the icon in the browser’s toolbar.
2)Click on the "Power" button.
3)Click on the "Refresh" button.
Go back

Disable uBlock

Follow these easy steps to disable uBlock

1)Click on the icon in the browser’s toolbar.
2)Click on the "Power" button.
3)Click on the "Refresh" button.
Go back
Top