Supondo que as datas estão no mesmo ano e negligenciando um pequeno erro de arredondamento, encontrei uma solução viável:
Primeiro explicarei e adicionarei a fórmula abaixo.
Eu dividi a solução em várias instâncias, se
IF 1: DATAS NA MESMA SEMANA
IF(WEEKNUMBER(A2)=WEEKNUMBER(B2);
SE 1.1: DATAS NO MESMO DIA
IF(DAY(A2)=DAY(B2));
Pegue as horas da data final menos as horas da data de início = resultado
(B2-A2)*24;
IF 1.2: DATAS NÃO NO MESMO DIA
Pegue o dia da data final menos o dia da data de início (= os dias entre as duas datas) e multiplique por 8 (= 17-9) e adicione a diferença em horas. A função MOD é usada para cortar os dias das datas e permanecer apenas com o tempo.
(DAY(B2)-DAY(A2))*(17-9)+(MOD(B2,1)-MOD(A2,1))*24);
SE 2: DATAS NÃO NA MESMA SEMANA
Eu calculo o número de horas das semanas no meio, então eu adiciono as horas da data de início até o final da semana de início (por sorte o ano começou em uma sexta para que eu pudesse fazer weeknumber (data inicial) * 7 e finalmente adiciono o número de horas desde o início da semana até a data final.
(WEEKNUMBER(B2)-WEEKNUMMER(A2)-1)*5*(17-9)+(WEEKNUMBER(A2)*7-QUOTIENT(A2;1))*(17-9)+17+(QUOTIENT(B2;1)-(WEEKNUMBER(B2)*7-4))*(17-9)+(MOD(B2;1)-MOD(A2;1))*24-9)
No final, você só precisa reunir todos esses códigos e calcular o horário comercial entre as datas.