A sintaxe da função PROC é esta:
PROC(valor_proc, vetor_proc, [vetor_result])
veja este link: https://support.microsoft.com/pt-pt/office/proc-fun%C3%A7%C3%A3o-proc-446d94af-663b-451d-8251-369d5e3864cb
Suponha que temos esta fórmula:
=PROC(B2-0,000000000000001; {0;1;2}; {100;80;60})
valor_proc no nosso caso encontra-se na célula B2 e este valor colocado nesta célula é comparado com os valores de vetor_proc que são: {0, 1, 2} e estes valores correspondem a: {100, 80, 60} --> [vetor_result].
Portanto, se um valor de 0 a 1 for definido em B2, o valor correspondente será 100. Se um valor for definido em B2 de 1 a 2, o valor correspondente será 80 e, se os valores forem definidos acima de 2, o valor correspondente é 60.
Em B2, subtraí o valor 0,0000000000000001, pois se o valor total for definido em B2, por exemplo o valor 1, será encontrado o valor correspondente 100. Se o valor 0,000000000000001 não tiver sido subtraído de B2 = 1, então o valor correspondente seria 80. Eu decidi um valor muito baixo de 0,000000000000001, mas você pode defini-lo com uma aproximação menor, por exemplo. 0,001 ou 0,01 (então a aproximação fica a seu critério).
Em relação ao outro caso que você deu, veja abaixo (espero ter entendido corretamente).

=SE((A2>=4)*(A2<=6); PROC(B2; {0;20;40,9999999999999}; {80;60;30}); "")
Ao número 40, acrescentei o valor de 0,9999999999999 para que quando o valor 40 estiver na célula B2, corresponda ao valor 60, pois se fosse um valor completo 40, corresponderia ao valor 30.
É um pouco difícil explicar as fórmulas, mas espero ter alcançado o objetivo. 🙂
Ao final desta explicação, quero agradecer por marcar minha resposta!