Hola Sailepaty y Gali,
1) Que conste que la formula que usa la funcion O() no es mia , ni me habia percatado de su existencia hasta que me lo indicasteis
2) No habia caido en que se buscaban las denominaciones y saque los codigos

Adjunto mi version completa.
3) la concatenacion de valores
Proveedor!A2&Proveedor!B2&Proveedor!C2 y
Cagua!$A$2:$A$20&Cagua!$B$2:$B$20&Cagua!$C$2:$C$20 es peligrosa ya que puede haber muchas combinaciones distintas que den el mismo resultado:
1-21-40
12-1-40
12-14-0
etc.
Creo que lo siguiente seria mas rapido si la tabla fuese extensa:
{=INDICE($N$3:$N$13;INDICE(Cagua!$E$2:$E$20;COINCIDIR(Proveedor!A2&"@"&Proveedor!B2&"@"&Proveedor!C2;Cagua!$A$2:$A$20&"@"&Cagua!$B$2:$B$20&"@"&Cagua!$C$2:$C$20;)))}
No tiene los permisos requeridos para ver los archivos adjuntos a este mensaje.