Код в порядке.Проблема в том, что ваш компьютер может использовать другой первый день недели в настройках региона и языка, чем компьютер, на котором был сделан код (или мой).
Для проверки установите текстовое поле на =WEEKDAY(TODAY)
.Компьютер, на котором работает этот код, имеет 1 как воскресенье, что сегодня (среда) составит 4 .Я предполагаю, что вы получите 3.
Если ваш первый день недели - понедельник, вам нужно изменить будние дни на 6 и 7, а не на 1 и 7, которые используются в данный момент.
= (DateDiff(DateInterval.day,Parameters!START.Value,Parameters!END.Value)+1)
- (DateDiff(DateInterval.WeekOfYear,Parameters!START.Value,Parameters!END.Value)*2)
- IIF(Weekday(Parameters!START.Value,1) = 6,1,0)
- IIF(Weekday(Parameters!START.Value,1) = 7,1,0)
- IIF(Weekday(Parameters!END.Value,1) = 6,1,0)
- IIF(Weekday(Parameters!END.Value,1) = 7,1,0)
Если это суббота, вам нужно использовать 1 и 2 в качестве выходных.